[Libreoffice-commits] core.git: Branch 'aoo/trunk' - 3 commits - sal/osl sal/rtl scp2/source solenv/bin

Yuri Dario ydario at apache.org
Mon Nov 25 08:08:16 PST 2013


 sal/osl/w32/signal.cxx                           |   11 ++-
 sal/rtl/source/alloc_arena.c                     |   15 +---
 scp2/source/ooo/registryitem_ooo.scp             |   72 -----------------------
 solenv/bin/modules/installer/windows/registry.pm |   11 ---
 4 files changed, 11 insertions(+), 98 deletions(-)

New commits:
commit 883e5a34129cae10e063ed9adce431af4f3f1519
Author: Yuri Dario <ydario at apache.org>
Date:   Mon Nov 25 15:00:24 2013 +0000

    i118923 - OS/2 port: use libc memory allocator to reduce fragmentation.

diff --git a/sal/rtl/source/alloc_arena.c b/sal/rtl/source/alloc_arena.c
index 790220d..571926c 100644
--- a/sal/rtl/source/alloc_arena.c
+++ b/sal/rtl/source/alloc_arena.c
@@ -1212,16 +1212,9 @@ SAL_CALL rtl_machdep_alloc (
 #elif defined(SAL_W32)
     addr = VirtualAlloc (NULL, (SIZE_T)(size), MEM_COMMIT, PAGE_READWRITE);
 #elif defined(SAL_OS2)
-    {
-    APIRET rc;
-    addr = 0;
-    // Use DosAlloc* to get a 4KB page aligned address.
-    rc = DosAllocMem( &addr, size, PAG_COMMIT | PAG_READ | PAG_WRITE | OBJ_ANY);
-    if (rc) {
-        fprintf( stderr, "sal3::DosAllocMem failed rc=%d\n", rc);
-        addr = 0;
-    }
-    }
+    /* Use valloc() to use libc 16MB chunks when allocating high memory, to reduce
+       virtual address fragmentation. */
+    addr = valloc( size);
 #endif /* (SAL_UNX || SAL_W32 || SAL_OS2) */
 
     if (addr != MAP_FAILED)
@@ -1256,7 +1249,7 @@ SAL_CALL rtl_machdep_free (
 #elif defined(SAL_W32)
     (void) VirtualFree ((LPVOID)(pAddr), (SIZE_T)(0), MEM_RELEASE);
 #elif defined(SAL_OS2)
-    (void) DosFreeMem( pAddr);
+    free(pAddr);
 #endif /* (SAL_UNX || SAL_W32) */
 }
 
commit 2a0a1e41bcca97caaf3fdfb375f5cebb330a0fcc
Author: Herbert Dürr <hdu at apache.org>
Date:   Mon Nov 25 14:38:26 2013 +0000

    #i123747# ignore single step and breakpoint SEH events

diff --git a/sal/osl/w32/signal.cxx b/sal/osl/w32/signal.cxx
index 5e3c3ec..57031ce 100644
--- a/sal/osl/w32/signal.cxx
+++ b/sal/osl/w32/signal.cxx
@@ -429,11 +429,12 @@ oslSignalAction SAL_CALL osl_raiseSignal(sal_Int32 UserSignal, void* UserData)
 void win_seh_translator( unsigned nSEHCode, _EXCEPTION_POINTERS* pExcPtrs)
 {
     const char* pSEHName = NULL;
-    switch( nSEHCode) {
+    switch( nSEHCode)
+    {
         case EXCEPTION_ACCESS_VIOLATION:         pSEHName = "SEH Exception: ACCESS VIOLATION"; break;
         case EXCEPTION_DATATYPE_MISALIGNMENT:    pSEHName = "SEH Exception: DATATYPE MISALIGNMENT"; break;
-//      case EXCEPTION_BREAKPOINT:               pSEHName = "SEH Exception: BREAKPOINT"; break;
-//      case EXCEPTION_SINGLE_STEP:              pSEHName = "SEH Exception: SINGLE STEP"; break;
+        case EXCEPTION_BREAKPOINT:               /*pSEHName = "SEH Exception: BREAKPOINT";*/ break;
+        case EXCEPTION_SINGLE_STEP:              /*pSEHName = "SEH Exception: SINGLE STEP";*/ break;
         case EXCEPTION_ARRAY_BOUNDS_EXCEEDED:    pSEHName = "SEH Exception: ARRAY BOUNDS EXCEEDED"; break;
         case EXCEPTION_FLT_DENORMAL_OPERAND:     pSEHName = "SEH Exception: DENORMAL FLOAT OPERAND"; break;
         case EXCEPTION_FLT_DIVIDE_BY_ZERO:       pSEHName = "SEH Exception: FLOAT DIVIDE_BY_ZERO"; break;
@@ -455,7 +456,9 @@ void win_seh_translator( unsigned nSEHCode, _EXCEPTION_POINTERS* pExcPtrs)
 //      case EXCEPTION_POSSIBLE_DEADLOCK:        pSEHName = "SEH Exception: POSSIBLE DEADLOCK"; break;
         default:                                 pSEHName = "Unknown SEH Exception"; break;
     }
-    throw std::runtime_error( pSEHName);
+
+    if( pSEHName)
+        throw std::runtime_error( pSEHName);
 }
 
 sal_Bool SAL_CALL osl_setErrorReporting( sal_Bool bEnable )
commit 31693b557864139a32e5297423c1245ac5002e7c
Author: Andre Fischer <af at apache.org>
Date:   Mon Nov 25 14:32:18 2013 +0000

    123729: Removed support for unused scp style LAYERE_REGISTRY and last uses (already commented out).

diff --git a/scp2/source/ooo/registryitem_ooo.scp b/scp2/source/ooo/registryitem_ooo.scp
index b36c6b9..67c2a49 100644
--- a/scp2/source/ooo/registryitem_ooo.scp
+++ b/scp2/source/ooo/registryitem_ooo.scp
@@ -325,78 +325,6 @@ RegistryItem gid_Regitem_Software_OpenOfficeorg_Ooobaseversion_Officeinstall
 	Styles = (ALWAYS_REQUIRED);
 End
 
-//RegistryItem gid_Regitem_Software_Manufacturer_Productname_Productversion_Productcode_Basisinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\%MANUFACTURER\%PRODUCTNAME%PRODUCTADDON\%PRODUCTVERSION\%PRODUCTCODE";
-//	ModuleID = gid_Module_Root;
-//	Name = "BASISINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]Basis\\";
-//	Styles = (LANGUAGEPACK,ALWAYS_REQUIRED);
-//End
-
-//RegistryItem gid_Regitem_Software_Manufacturer_Productname_Productversion_Upgradecode_Basisinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\%MANUFACTURER\%PRODUCTNAME%PRODUCTADDON\%PRODUCTVERSION\%UPGRADECODE";
-//	ModuleID = gid_Module_Root;
-//	Name = "BASISINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]Basis\\";
-//	Styles = (LANGUAGEPACK,ALWAYS_REQUIRED);
-//End
-
-//RegistryItem gid_Regitem_Software_OpenOfficeorg_Ooobaseversion_Basisinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\OpenOffice\${REGISTRYLAYERNAME}\Basis\%OOOBASEVERSION";
-//	ModuleID = gid_Module_Root;
-//	Name = "BASISINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]Basis\\";
-//	Styles = (ALWAYS_REQUIRED,LAYER_REGISTRY,USE_OOOBASEVERSION);
-//End
-
-//RegistryItem gid_Regitem_Software_OpenOfficeorg_Ooobaseversion_Layer_Basisinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\OpenOffice\${REGISTRYLAYERNAME}\%PRODUCTNAME\%BRANDPACKAGEVERSION";
-//	ModuleID = gid_Module_Root;
-//	Name = "BASISINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]Basis\\";
-//	Styles = (ALWAYS_REQUIRED);
-//End
-
-//RegistryItem gid_Regitem_Software_Manufacturer_Productname_Productversion_Productcode_Ureinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\%MANUFACTURER\%PRODUCTNAME%PRODUCTADDON\%PRODUCTVERSION\%PRODUCTCODE";
-//	ModuleID = gid_Module_Root;
-//	Name = "UREINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]URE\\";
-//	Styles = (LANGUAGEPACK,ALWAYS_REQUIRED);
-//End
-
-//RegistryItem gid_Regitem_Software_Manufacturer_Productname_Productversion_Upgradecode_Ureinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\%MANUFACTURER\%PRODUCTNAME%PRODUCTADDON\%PRODUCTVERSION\%UPGRADECODE";
-//	ModuleID = gid_Module_Root;
-//	Name = "UREINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]URE\\";
-//	Styles = (LANGUAGEPACK,ALWAYS_REQUIRED);
-//End
-
-//RegistryItem gid_Regitem_Software_OpenOfficeorg_Ooobaseversion_Ureinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\OpenOffice\${REGISTRYLAYERNAME}\URE\%URELAYERVERSION";
-//	ModuleID = gid_Module_Root;
-//	Name = "UREINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]URE\\";
-//	Styles = (ALWAYS_REQUIRED,LAYER_REGISTRY,USE_URELAYERVERSION);
-//End
-
-//RegistryItem gid_Regitem_Software_OpenOfficeorg_Ooobaseversion_Layer_Ureinstall
-//	ParentID = PREDEFINED_HKEY_LOCAL_MACHINE;
-//	Subkey = "Software\OpenOffice\${REGISTRYLAYERNAME}\%PRODUCTNAME\%BRANDPACKAGEVERSION";
-//	ModuleID = gid_Module_Root;
-//	Name = "UREINSTALLLOCATION";
-//	Value = "[INSTALLLOCATION]URE\\";
-//	Styles = (ALWAYS_REQUIRED);
-//End
-
 RegistryItem gid_Regitem_Sog
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     Subkey = ".sog";
diff --git a/solenv/bin/modules/installer/windows/registry.pm b/solenv/bin/modules/installer/windows/registry.pm
index 3e26b03..6469ee1 100644
--- a/solenv/bin/modules/installer/windows/registry.pm
+++ b/solenv/bin/modules/installer/windows/registry.pm
@@ -77,17 +77,6 @@ sub get_registry_component_name
     my $styles = "";
     if ( $registryref->{'Styles'} ) { $styles = $registryref->{'Styles'}; }
 
-    # Layer links must have unique Component GUID for all products. This is necessary, because only the
-    # uninstallation of the last product has to delete registry keys.
-    if ( $styles =~ /\bLAYER_REGISTRY\b/ )
-    {
-        $componentname = "g_m_root_registry_layer_ooo_reglayer";
-        # Styles USE_URELAYERVERSION, USE_OOOBASEVERSION
-        if ( $styles =~ /\bUSE_URELAYERVERSION\b/ ) { $addon = "_ure_" . $allvariables->{'URELAYERVERSION'}; }
-        if ( $styles =~ /\bUSE_OOOBASEVERSION\b/ ) { $addon = "_basis_" . $allvariables->{'OOOBASEVERSION'}; }
-        $addon =~ s/\.//g;
-    }
-
     $componentname = $componentname . $addon;
 
     if (( $styles =~ /\bLANGUAGEPACK\b/ ) && ( $installer::globals::languagepack )) { $componentname = $componentname . "_lang"; }


More information about the Libreoffice-commits mailing list