view patches/openoffice-store-registry.patch @ 6512:ccc20ae889ca default tip guix

mingw::guile-2.0.7 builds.
author Jan Nieuwenhuizen <janneke@gnu.org>
date Thu, 24 Mar 2016 08:03:39 +0100
parents 0fcf64ee698f
children
line wrap: on
line source

--- ./registry/inc/registry/registry.h.store-registry~	2008-07-07 21:53:26.583846279 +0200
+++ ./registry/inc/registry/registry.h	2008-07-07 22:05:39.641847088 +0200
@@ -410,7 +410,7 @@ RegError REGISTRY_CALLTYPE reg_mergeKey(
 	@return	REG_NO_ERROR if succeeds else an error code. 
 */
 RegError REGISTRY_CALLTYPE reg_createRegistry(rtl_uString* registryName, 
-							 				  RegHandle* phRegistry);
+							 				  RegHandle* phRegistry, bool bInternal = false);
 
 
 /**	This function opens the root key of a registry.
--- ./registry/source/regimpl.cxx.store-registry~	2008-07-07 21:53:24.154848251 +0200
+++ ./registry/source/regimpl.cxx	2008-07-07 22:04:50.955847680 +0200
@@ -483,7 +483,7 @@ ORegistry::~ORegistry()
 //*********************************************************************
 //  initRegistry
 //
-RegError ORegistry::initRegistry(const OUString& regName, RegAccessMode accessMode)
+RegError ORegistry::initRegistry(const OUString& regName, RegAccessMode accessMode, bool bInternal)
 {
     OStoreFile      rRegFile;
     storeAccessMode sAccessMode = REG_MODE_OPEN;
@@ -506,7 +506,10 @@ RegError ORegistry::initRegistry(const O
     }
     else
     {
-        errCode = rRegFile.create(regName, sAccessMode, REG_PAGESIZE);
+        if (bInternal)
+            errCode = rRegFile.create(regName, sAccessMode, REG_PAGESIZE_INTERNAL, REG_RDB_FORMAT_2);
+        else
+            errCode = rRegFile.create(regName, sAccessMode, REG_PAGESIZE_PUBLIC, REG_RDB_FORMAT_1);
     }
 
     if (errCode)
--- ./registry/source/regimpl.hxx.store-registry~	2008-04-11 12:50:09.000000000 +0200
+++ ./registry/source/regimpl.hxx	2008-07-07 22:04:50.957847096 +0200
@@ -36,7 +36,11 @@
 #include	<osl/mutex.hxx>
 #include	<store/store.hxx>
 
-#define REG_PAGESIZE 512
+#define REG_PAGESIZE_PUBLIC   512
+#define REG_PAGESIZE_INTERNAL 128
+
+#define REG_RDB_FORMAT_1 STORE_FORMAT_V1
+#define REG_RDB_FORMAT_2 STORE_FORMAT_V2
 
 #define	REG_MODE_CREATE		store_AccessCreate
 #define	REG_MODE_OPEN		store_AccessReadWrite 
@@ -93,7 +97,8 @@ public:
 		{ return --m_refCount; }
 
 	RegError	initRegistry(const OUString& name, 
-							 RegAccessMode accessMode);
+							 RegAccessMode accessMode,
+                             bool bInternal = false);
 
 	RegError	closeRegistry();
 
--- ./registry/source/registry.cxx.store-registry~	2008-04-11 12:50:37.000000000 +0200
+++ ./registry/source/registry.cxx	2008-07-07 22:04:50.959846582 +0200
@@ -637,12 +637,13 @@ RegError REGISTRY_CALLTYPE reg_mergeKey(
 //	reg_createRegistry
 //
 RegError REGISTRY_CALLTYPE reg_createRegistry(rtl_uString* registryName, 
-											  RegHandle* phRegistry)
+											  RegHandle* phRegistry,
+                                              bool bInternal)
 {
 	RegError ret;
 
 	ORegistry* pReg = new ORegistry();
-	if ((ret = pReg->initRegistry(registryName, REG_CREATE)))
+	if ((ret = pReg->initRegistry(registryName, REG_CREATE, bInternal)))
 	{
 		*phRegistry = NULL;
 		return ret;
--- ./registry/tools/regmerge.cxx.store-registry~	2008-04-11 12:58:26.000000000 +0200
+++ ./registry/tools/regmerge.cxx	2008-07-07 22:04:50.962846684 +0200
@@ -98,15 +98,16 @@ static void dumpHelp()
 {
     fprintf(stderr, "using: regmerge [-v|--verbose] mergefile mergeKeyName regfile_1 ... regfile_n\n");
     fprintf(stderr, "       regmerge @regcmds\nOptions:\n");    
-    fprintf(stderr, "  -v, --verbose : verbose output on stdout.\n");
-    fprintf(stderr, "  mergefile     : specifies the merged registry file. If this file doesn't exists,\n");
-    fprintf(stderr, "                  it is created.\n");
-    fprintf(stderr, "  mergeKeyName  : specifies the merge key, everything is merged under this key.\n");
-    fprintf(stderr, "                  If this key doesn't exists, it is created.\n");
-    fprintf(stderr, "  regfile_1..n  : specifies one or more registry files which are merged.\n");
+    fprintf(stderr, "  -i, --internal : use internal private format.\n");
+    fprintf(stderr, "  -v, --verbose  : verbose output on stdout.\n");
+    fprintf(stderr, "  mergefile      : specifies the merged registry file. If this file doesn't exists,\n");
+    fprintf(stderr, "                   it is created.\n");
+    fprintf(stderr, "  mergeKeyName   : specifies the merge key, everything is merged under this key.\n");
+    fprintf(stderr, "                   If this key doesn't exists, it is created.\n");
+    fprintf(stderr, "  regfile_1..n   : specifies one or more registry files which are merged.\n");
 }
 
-static bool checkCommandFile(char* cmdfile)
+static bool checkCommandFile(char* cmdfile, bool& bInternal)
 {
 	FILE	*commandfile;
 	char 	option[256];
@@ -122,13 +123,17 @@ static bool checkCommandFile(char* cmdfi
 		{
 			if (option[0]== '@')
 			{
-				bool bRet = checkCommandFile(option);
+				bool bRet = checkCommandFile(option, bInternal);
                 // ensure that the option will not be overwritten
                 if ( !bRet )
                     bVerbose = bRet;
 			} else {
                 if (option[0]== '-') {
-                    if (strncmp(option, "-v", 2)  == 0 ||
+                    if (strncmp(option, "-i", 2)  == 0 ||
+                        strncmp(option, "--internal", 10) == 0)
+                    {
+                        bInternal = true;
+                    } else if (strncmp(option, "-v", 2)  == 0 ||
                         strncmp(option, "--verbose", 9) == 0)
                     {
                         bVerbose = true;
@@ -155,23 +160,28 @@ static bool checkCommandFile(char* cmdfi
     return bVerbose;
 }	
 
-static bool checkCommandArgs(int argc, char **argv)
+static bool checkCommandArgs(int argc, char **argv, bool &bInternal)
 {
     bool bVerbose = false;
     
+    bInternal = false;
     realargc = 0;
 
 	for (int i=0; i<argc; i++)        
 	{
 		if (argv[i][0]== '@')
 		{
-            bool bRet = checkCommandFile(argv[i]);
+            bool bRet = checkCommandFile(argv[i], bInternal);
             // ensure that the option will not be overwritten
             if ( !bRet )
                 bVerbose = bRet;
 		} else {
             if (argv[i][0]== '-') {
-                if (strncmp(argv[i], "-v", 2)  == 0 ||
+                if (strncmp(argv[i], "-i", 2)  == 0 ||
+                    strncmp(argv[i], "--internal", 10) == 0)
+                {
+                    bInternal = true;
+                } else if (strncmp(argv[i], "-v", 2)  == 0 ||
                     strncmp(argv[i], "--verbose", 9) == 0)
                 {
                     bVerbose = true;
@@ -209,7 +219,8 @@ int _cdecl main( int argc, char * argv[]
 {
 	RegHandle 		hReg;
 	RegKeyHandle	hRootKey;
-    bool            bVerbose = checkCommandArgs(argc, argv);
+    bool            bInternal;
+    bool            bVerbose = checkCommandArgs(argc, argv, bInternal);
 
 	if (realargc < 4)
 	{
@@ -221,7 +232,7 @@ int _cdecl main( int argc, char * argv[]
 	::rtl::OUString regName( convertToFileUrl(realargv[1]) );
 	if (reg_openRegistry(regName.pData, &hReg, REG_READWRITE))
 	{
-		if (reg_createRegistry(regName.pData, &hReg))
+		if (reg_createRegistry(regName.pData, &hReg, bInternal))
 		{
             if (bVerbose)
                 fprintf(stderr, "open registry \"%s\" failed\n", realargv[1]);