rpms/openoffice.org/devel workspace.s390xport02.patch, NONE, 1.1 workspace.thbfixes10.patch, NONE, 1.1 openoffice.org.spec, 1.2128, 1.2129 openoffice.org-3.2.0.ooo107137.canvas.fixcolorspace.patch, 1.1, NONE

Caolan McNamara caolanm at fedoraproject.org
Mon Jan 18 20:10:54 UTC 2010


Author: caolanm

Update of /cvs/pkgs/rpms/openoffice.org/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv10293

Modified Files:
	openoffice.org.spec 
Added Files:
	workspace.s390xport02.patch workspace.thbfixes10.patch 
Removed Files:
	openoffice.org-3.2.0.ooo107137.canvas.fixcolorspace.patch 
Log Message:
improve s390x uno bridge, et. al

workspace.s390xport02.patch:
 cpp2uno.cxx |    8 +++++++-
 uno2cpp.cxx |    8 +++++---
 2 files changed, 12 insertions(+), 4 deletions(-)

--- NEW FILE workspace.s390xport02.patch ---
diff -r b9c9dd11b0a1 -r a92f79b9fc30 bridges/source/cpp_uno/gcc3_linux_s390x/cpp2uno.cxx
--- a/bridges/source/cpp_uno/gcc3_linux_s390x/cpp2uno.cxx	Thu Jan 07 15:14:24 2010 +0100
+++ b/bridges/source/cpp_uno/gcc3_linux_s390x/cpp2uno.cxx	Mon Jan 18 11:56:59 2010 +0000
@@ -522,15 +522,21 @@
 
     switch( aType )
     {
-        case typelib_TypeClass_VOID:
         case typelib_TypeClass_BOOLEAN:
         case typelib_TypeClass_BYTE:
+            nRegReturn[0] = (unsigned long)(*(unsigned char *)nRegReturn);
+            break;
         case typelib_TypeClass_CHAR:
         case typelib_TypeClass_UNSIGNED_SHORT:
         case typelib_TypeClass_SHORT:
+            nRegReturn[0] = (unsigned long)(*(unsigned short *)nRegReturn);
+            break;
         case typelib_TypeClass_ENUM:
         case typelib_TypeClass_UNSIGNED_LONG:
         case typelib_TypeClass_LONG:
+            nRegReturn[0] = (unsigned long)(*(unsigned int *)nRegReturn);
+            break;
+        case typelib_TypeClass_VOID:
         default:
             break;
         case typelib_TypeClass_FLOAT:
diff -r b9c9dd11b0a1 -r a92f79b9fc30 bridges/source/cpp_uno/gcc3_linux_s390x/uno2cpp.cxx
--- a/bridges/source/cpp_uno/gcc3_linux_s390x/uno2cpp.cxx	Thu Jan 07 15:14:24 2010 +0100
+++ b/bridges/source/cpp_uno/gcc3_linux_s390x/uno2cpp.cxx	Mon Jan 18 11:56:59 2010 +0000
@@ -60,19 +60,21 @@
     {
     case typelib_TypeClass_HYPER:
     case typelib_TypeClass_UNSIGNED_HYPER:
+            *pRegisterReturn = r2;
+            break;
     case typelib_TypeClass_LONG:
     case typelib_TypeClass_UNSIGNED_LONG:
     case typelib_TypeClass_ENUM:
-            *pRegisterReturn = r2;
+            *(unsigned int*)pRegisterReturn = (unsigned int)r2;
             break;
     case typelib_TypeClass_CHAR:
     case typelib_TypeClass_SHORT:
     case typelib_TypeClass_UNSIGNED_SHORT:
-            *pRegisterReturn = (unsigned short)r2;
+            *(unsigned short*)pRegisterReturn = (unsigned short)r2;
             break;
     case typelib_TypeClass_BOOLEAN:
     case typelib_TypeClass_BYTE:
-            *pRegisterReturn = (unsigned char)r2;
+            *(unsigned char*)pRegisterReturn = (unsigned char)r2;
             break;
     case typelib_TypeClass_FLOAT:
             *reinterpret_cast<float *>( pRegisterReturn ) = f0;

workspace.thbfixes10.patch:
 cairo_canvashelper.cxx |   22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

--- NEW FILE workspace.thbfixes10.patch ---
diff --git a/canvas/source/cairo/cairo_canvashelper.cxx b/canvas/source/cairo/cairo_canvashelper.cxx
index 3b3571a..15245f4 100644
--- canvas/source/cairo/cairo_canvashelper.cxx
+++ canvas/source/cairo/cairo_canvashelper.cxx
@@ -1640,12 +1640,12 @@ namespace cairocanvas
                 rendering::RGBColor* pOut( aRes.getArray() );
                 for( sal_Size i=0; i<nLen; i+=4 )
                 {
-                    const sal_Int8 nAlpha(pIn[3]);
-                    if( nAlpha )
+                    const double fAlpha((sal_uInt8)pIn[3]);
+                    if( fAlpha )
                         *pOut++ = rendering::RGBColor(
-                            vcl::unotools::toDoubleColor(pIn[2]/nAlpha),
-                            vcl::unotools::toDoubleColor(pIn[1]/nAlpha),
-                            vcl::unotools::toDoubleColor(pIn[0]/nAlpha));
+                            pIn[2]/fAlpha,
+                            pIn[1]/fAlpha,
+                            pIn[0]/fAlpha);
                     else
                         *pOut++ = rendering::RGBColor(0,0,0);
                     pIn += 4;
@@ -1665,13 +1665,13 @@ namespace cairocanvas
                 rendering::ARGBColor* pOut( aRes.getArray() );
                 for( sal_Size i=0; i<nLen; i+=4 )
                 {
-                    const sal_Int8 nAlpha(pIn[3]);
-                    if( nAlpha )
+                    const double fAlpha((sal_uInt8)pIn[3]);
+                    if( fAlpha )
                         *pOut++ = rendering::ARGBColor(
-                            vcl::unotools::toDoubleColor(nAlpha),
-                            vcl::unotools::toDoubleColor(pIn[2]/nAlpha),
-                            vcl::unotools::toDoubleColor(pIn[1]/nAlpha),
-                            vcl::unotools::toDoubleColor(pIn[0]/nAlpha));
+                            fAlpha/255.0,
+                            pIn[2]/fAlpha,
+                            pIn[1]/fAlpha,
+                            pIn[0]/fAlpha);
                     else
                         *pOut++ = rendering::ARGBColor(0,0,0,0);
                     pIn += 4;


Index: openoffice.org.spec
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/devel/openoffice.org.spec,v
retrieving revision 1.2128
retrieving revision 1.2129
diff -u -p -r1.2128 -r1.2129
--- openoffice.org.spec	16 Jan 2010 12:51:36 -0000	1.2128
+++ openoffice.org.spec	18 Jan 2010 20:10:54 -0000	1.2129
@@ -1,6 +1,6 @@
 %define oootag OOO320
 %define ooomilestone 10
-%define rh_rpm_release 1
+%define rh_rpm_release 2
 
 # rhbz#465664 jar-repacking breaks help by reordering META-INF/MANIFEST.MF
 %define __jar_repack %{nil}
@@ -118,7 +118,7 @@ Patch42: workspace.hb33patches1.patch
 Patch43: workspace.ause109.patch
 Patch44: workspace.cmcfixes67.patch
 Patch45: workspace.srb1.patch
-Patch46: openoffice.org-3.2.0.ooo107137.canvas.fixcolorspace.patch
+Patch46: workspace.thbfixes10.patch
 Patch47: openoffice.org-3.3.0.ooo102645.fix.es.patch
 Patch48: workspace.vcl108.patch
 Patch49: workspace.pythonssldedux.patch
@@ -131,6 +131,7 @@ Patch55: workspace.sw33bf02.patch
 Patch56: openoffice.org-3.2.0.ooo108330.embeddedobj.outplace.readonly.os.dispatch.patch
 Patch57: openoffice.org-3.2.0.ooo96362.filter.nondeterministic.order.patch
 Patch58: workspace.cmcfixes70.patch
+Patch59: workspace.s390xport02.patch
 
 %{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
 %define instdir %{_libdir}
@@ -1676,7 +1677,7 @@ cp -p %{SOURCE5} external/unowinreg/unow
 %patch43 -p0 -b .workspace.ause109.patch
 %patch44 -p1 -b .workspace.cmcfixes67.patch
 %patch45 -p1 -b .workspace.srb1.patch
-%patch46 -p0 -b .ooo107137.canvas.fixcolorspace.patch
+%patch46 -p0 -b .workspace.thbfixes10.patch
 %patch47 -p0 -b .ooo102645.fix.es.patch
 %patch48 -p0 -b .workspace.vcl108.patch
 %patch49 -p1 -b .workspace.pythonssldedux.patch
@@ -1689,6 +1690,7 @@ cp -p %{SOURCE5} external/unowinreg/unow
 %patch56 -p0 -b .ooo108330.embeddedobj.outplace.readonly.os.dispatch.patch
 %patch57 -p0 -b .ooo96362.filter.nondeterministic.order.patch
 %patch58 -p1 -b .workspace.cmcfixes70.patch
+%patch59 -p1 -b .workspace.s390xport02.patch
 
 %build
 echo build start time is `date`, diskspace: `df -h . | tail -n 1`
@@ -4171,6 +4173,9 @@ fi
 %endif
 
 %changelog
+* Mon Jan 18 2010 Caolán McNamara <caolanm at redhat.com> - 1:3.2.0-10.2
+- improve s390x uno bridge
+
 * Sat Jan 16 2010 Caolán McNamara <caolanm at redhat.com> - 1:3.2.0-10.1
 - latest milestone
 


--- openoffice.org-3.2.0.ooo107137.canvas.fixcolorspace.patch DELETED ---



More information about the scm-commits mailing list