[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

rpms/openoffice.org/devel openoffice.org-1.9.117.ooo49720.mozillanspr.extensions.patch, NONE, 1.1 openoffice.org-1.9.120.ooo52428.execshield.bridges.patch, NONE, 1.1 workspace.cmcfixes12, NONE, 1.1 workspace.gslpatches4.patch, NONE, 1.1 openoffice.org.spec, 1.357, 1.358 openoffice.org-1.9.115.ooo51673.printing.checkerror.patch, 1.1, NONE openoffice.org-1.9.115.ooo51735.audio.withoutnas.patch, 1.1, NONE openoffice.org-1.9.117.oooXXXXX.mozillanspr.extensions.patch, 1.3, NONE openoffice.org-1.9.118.forwarddecl.psprint.patch, 1.3, NONE openoffice.org-1.9.118.rhXXXXX.envcflags.solenv.patch, 1.1, NONE openoffice.org-1.9.120.rh158977.execshield.bridges.patch, 1.1, NONE workspace.gslpatches2.patch, 1.3, NONE



Author: caolanm

Update of /cvs/dist/rpms/openoffice.org/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv14583

Modified Files:
	openoffice.org.spec 
Added Files:
	openoffice.org-1.9.117.ooo49720.mozillanspr.extensions.patch 
	openoffice.org-1.9.120.ooo52428.execshield.bridges.patch 
	workspace.cmcfixes12 workspace.gslpatches4.patch 
Removed Files:
	openoffice.org-1.9.115.ooo51673.printing.checkerror.patch 
	openoffice.org-1.9.115.ooo51735.audio.withoutnas.patch 
	openoffice.org-1.9.117.oooXXXXX.mozillanspr.extensions.patch 
	openoffice.org-1.9.118.forwarddecl.psprint.patch 
	openoffice.org-1.9.118.rhXXXXX.envcflags.solenv.patch 
	openoffice.org-1.9.120.rh158977.execshield.bridges.patch 
	workspace.gslpatches2.patch 
Log Message:
alternatives

openoffice.org-1.9.117.ooo49720.mozillanspr.extensions.patch:
 config_office/configure.in                    |    7 +++++++
 config_office/set_soenv.in                    |    1 +
 extensions/source/nsplugin/source/makefile.mk |    2 +-
 np_sdk/mozilla-source-M16-stub.patch          |    2 +-
 4 files changed, 10 insertions(+), 2 deletions(-)

--- NEW FILE openoffice.org-1.9.117.ooo49720.mozillanspr.extensions.patch ---
--- openoffice.org.orig/config_office/configure.in.old	2005-06-09 14:11:54.000000000 +0200
+++ openoffice.org/config_office/configure.in	2005-06-09 17:29:59.000000000 +0200
@@ -2729,6 +2729,12 @@
     SYSTEM_MOZILLA=YES
     PKG_CHECK_MODULES( MOZILLAXPCOM, mozilla-xpcom )
 
+    if $PKG_CONFIG --exists nspr ; then
+	PKG_CHECK_MODULES( MOZ_NSPR, nspr )
+    else
+	PKG_CHECK_MODULES( MOZ_NSPR, mozilla-nspr )
+    fi
+
     PKG_CHECK_MODULES( MOZ_NSS, mozilla-nss )
     save_CPPFLAGS="$CPPFLAGS"
     save_LDFLAGS="$LDFLAGS"
@@ -2853,6 +2859,7 @@
 AC_SUBST(MOZ_INC)
 AC_SUBST(MOZ_LIB)
 AC_SUBST(MOZ_LIB_XPCOM)
+AC_SUBST(MOZ_NSPR_CFLAGS)
 AC_SUBST(MOZ_NSS_CFLAGS)
 AC_SUBST(MOZ_LDAP_CFLAGS)
 AC_SUBST(MOZ_NSS_HACK)
--- openoffice.org.orig/config_office/set_soenv.in.old	2005-06-09 14:11:54.000000000 +0200
+++ openoffice.org/config_office/set_soenv.in	2005-06-09 17:31:05.000000000 +0200
@@ -1692,6 +1692,7 @@
 ToFile( "MOZ_INC",           "@MOZ_INC@",          "e" );
 ToFile( "MOZ_LIB",           "@MOZ_LIB@",          "e" );
 ToFile( "MOZ_LIB_XPCOM",     "@MOZ_LIB_XPCOM@",    "e" );
+ToFile( "MOZ_NSPR_CFLAGS",   "@MOZ_NSPR_CFLAGS@",  "e" );
 ToFile( "MOZ_NSS_CFLAGS",    "@MOZ_NSS_CFLAGS@",   "e" );
 ToFile( "MOZ_LDAP_CFLAGS",   "@MOZ_LDAP_CFLAGS@",  "e" );
 ToFile( "MOZ_NSS_HACK",      "@MOZ_NSS_HACK@",     "e" );
--- openoffice.org.org/extensions/source/nsplugin/source/makefile.mk.old	2005-03-30 13:41:52.000000000 +0200
+++ openoffice.org/extensions/source/nsplugin/source/makefile.mk	2005-05-19 12:41:28.000000000 +0200
@@ -81,7 +81,7 @@
 .IF "$(OS)"=="LINUX" || "$(OS)"=="FREEBSD"
 INC+= -DNP_LINUX
 .IF "$(SYSTEM_MOZILLA)" == "YES"
-INCPRE=-I$(MOZ_INC)/nspr -I$(MOZ_INC)/java -I$(MOZ_INC)/plugin
+INCPRE=$(MOZ_NSPR_CFLAGS) -I$(MOZ_INC)/java -I$(MOZ_INC)/plugin
 # not sure about -DMOZ_X11 but otheriwse some struct member don't exist...
 CFLAGS+=-DSYSTEM_MOZILLA -DMOZ_X11
 .ENDIF
--- openoffice.org.orig/np_sdk/mozilla-source-M16-stub.patch.old	2005-06-09 14:11:46.000000000 +0200
+++ openoffice.org/np_sdk/mozilla-source-M16-stub.patch	2005-06-09 17:41:12.000000000 +0200
@@ -1202,7 +1202,7 @@
 ! .ENDIF
 ! 
 ! .IF "$(SYSTEM_MOZILLA)" == "YES"
-! INCPRE= -I$(MOZ_INC)/nspr -I$(MOZ_INC)/java -I$(MOZ_INC)/plugin
+! INCPRE= $(MOZ_NSPR_CFLAGS) -I$(MOZ_INC)/java -I$(MOZ_INC)/plugin
 ! .ENDIF
 ! 
 ! .IF "$(GUI)" == "UNX"

openoffice.org-1.9.120.ooo52428.execshield.bridges.patch:
 bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx |   18 ++++++++++++++++--
 source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx         |    0 
 2 files changed, 16 insertions(+), 2 deletions(-)

--- NEW FILE openoffice.org-1.9.120.ooo52428.execshield.bridges.patch ---
Index: source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx
===================================================================
RCS file: /cvs/udk/bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx,v
retrieving revision 1.8
diff -u -p -u -r1.8 cpp2uno.cxx
--- openoffice.org.orig/bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx	17 Jun 2005 09:51:58 -0000	1.8
+++ openoffice.org/bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx	23 Jul 2005 14:19:14 -0000
@@ -71,6 +71,12 @@
 
 #include "share.hxx"
 
+#include <sys/mman.h>
+#include <limits.h>    /* for PAGESIZE */
+#ifndef PAGESIZE
+#define PAGESIZE 4096
+#endif
+
 using namespace ::com::sun::star::uno;
 
 namespace
@@ -446,11 +452,19 @@ void ** bridges::cpp_uno::shared::Vtable
     return reinterpret_cast< void ** >(block) + 2;
 }
 
+static char *create_executable_block(size_t nSize)
+{
+    char * block = new char[nSize];
+    char *p = (char *)(((int) block + PAGESIZE-1) & ~(PAGESIZE-1));
+    mprotect(p, nSize, PROT_READ | PROT_WRITE | PROT_EXEC);
+    return block;
+}
+
 char * bridges::cpp_uno::shared::VtableFactory::createBlock(
     sal_Int32 slotCount, void *** slots)
 {
-    char * block = new char[
-        (slotCount + 2) * sizeof (void *) + slotCount * codeSnippetSize];
+    size_t nSize = (slotCount + 2) * sizeof(void *) + slotCount * codeSnippetSize;
+    char * block = create_executable_block(nSize);
     *slots = mapBlockToVtable(block);
     (*slots)[-2] = 0;
     (*slots)[-1] = 0;


--- NEW FILE workspace.cmcfixes12 ---
diff -ru psprint.orig/inc/psprint/fontmanager.hxx psprint/inc/psprint/fontmanager.hxx
--- openoffice.org.orig/psprint/psprint.orig/inc/psprint/fontmanager.hxx	2005-07-26 10:42:06.000000000 +0100
+++ openoffice.org/psprint/psprint/inc/psprint/fontmanager.hxx	2005-07-26 10:42:26.000000000 +0100
@@ -247,6 +247,8 @@
 // a class to manage printable fonts
 // aims are type1 and truetype fonts
 
+class FontCache;
+
 class PrintFontManager
 {
     struct PrintFont;
diff -ru psprint.orig/inc/psprint/printergfx.hxx psprint/inc/psprint/printergfx.hxx
--- openoffice.org.orig/psprint/psprint.orig/inc/psprint/printergfx.hxx	2005-07-26 10:42:06.000000000 +0100
+++ openoffice.org/psprint/psprint/inc/psprint/printergfx.hxx	2005-07-26 10:43:32.000000000 +0100
@@ -218,6 +218,8 @@
     GraphicsStatus();
 };
 
+class Font3;
+
 class PrinterGfx
 {
 private:            
diff -ru vcl.orig/inc/alpha.hxx vcl/inc/alpha.hxx
--- openoffice.org.orig/vcl/vcl.orig/inc/alpha.hxx	2005-07-26 10:45:51.000000000 +0100
+++ openoffice.org/vcl/vcl/inc/alpha.hxx	2005-07-26 10:46:02.000000000 +0100
@@ -75,6 +75,7 @@
 // -------------
 
 class ImageList;
+class BitmapEx;
 
 class VCL_DLLPUBLIC AlphaMask : private Bitmap
 {
diff -ru vcl.orig/inc/mapmod.hxx vcl/inc/mapmod.hxx
--- openoffice.org.orig/vcl/vcl.orig/inc/mapmod.hxx	2005-07-26 10:45:51.000000000 +0100
+++ openoffice.org/vcl/vcl/inc/mapmod.hxx	2005-07-26 10:52:24.000000000 +0100
@@ -90,6 +90,8 @@
 // - ImplMapMode -
 // --------------
 
+class	OutputDevice;
+
 class ImplMapMode
 {
 	friend class	MapMode;
diff -ru vcl.orig/inc/outdev.hxx vcl/inc/outdev.hxx
--- openoffice.org.orig/vcl/vcl.orig/inc/outdev.hxx	2005-07-26 10:45:51.000000000 +0100
+++ openoffice.org/vcl/vcl/inc/outdev.hxx	2005-07-26 10:49:14.000000000 +0100
@@ -331,6 +331,8 @@
 // - OutputDevice -
 // ----------------
 
+class VirtualDevice;
+
 class VCL_DLLPUBLIC OutputDevice : public Resource
 {
 	friend class Application;

workspace.gslpatches4.patch:
 config_office/configure.in                     |   10 
 config_office/set_soenv.in                     |    1 
 icu/icu-2.6.patch                              |  533 ++++++++++++++++---------
 package/inc/ZipPackageFolder.hxx               |    2 
 package/source/zippackage/ZipPackageFolder.cxx |    2 
 package/source/zippackage/ZipPackageStream.cxx |    2 
 psprint/source/printer/printerinfomanager.cxx  |    3 
 psprint/source/printergfx/printerjob.cxx       |    6 
 sfx2/source/view/prnmon.cxx                    |    9 
 solenv/config/ssolar.cmn                       |    1 
 solenv/config/ssrc680.ini                      |    6 
 vcl/inc/impprn.hxx                             |    5 
 vcl/source/gdi/impprn.cxx                      |    5 
 vcl/source/gdi/print.cxx                       |   20 
 vcl/source/gdi/sallayout.cxx                   |    7 
 vcl/source/glyphs/gcach_layout.cxx             |   20 
 vcl/unx/source/app/makefile.mk                 |   12 
 vcl/unx/source/app/vsound.hxx                  |    4 
 vcl/util/makefile.mk                           |    9 
 19 files changed, 447 insertions(+), 210 deletions(-)

--- NEW FILE workspace.gslpatches4.patch ---
Index: configure.in
===================================================================
RCS file: /cvs/tools/config_office/configure.in,v
retrieving revision 1.128
retrieving revision 1.127.2.2
diff -u -p -u -r1.128 -r1.127.2.2
--- openoffice.org.orig/config_office/configure.in	14 Jul 2005 13:45:35 -0000	1.128
+++ openoffice.org/config_office/configure.in	19 Jul 2005 11:21:55 -0000	1.127.2.2
@@ -176,6 +176,9 @@ AC_ARG_WITH(myspell-dicts,
                           distributions where the myspell dictionaries are
                           installed from other sources
 ],,)
+AC_ARG_WITH(nas,
+[  --without-nas           Removes nas support
+],,)
 AC_ARG_WITH(system-libs,
 [  --with-system-libs      Use libs already on system -- enables all
                           --with-system-* flags except mozilla, python and
@@ -2997,7 +3000,9 @@ dnl ====================================
 dnl Check for system nas
 dnl ===================================================================
 AC_MSG_CHECKING([which nas to use])
-if test -n "$with_system_nas" -o -n "$with_system_libs" && \
+if test -n "$with_nas"; then
+    AC_MSG_RESULT([none])
+elif test -n "$with_system_nas" -o -n "$with_system_libs" && \
 	test "$with_system_nas" != "no"; then
     AC_MSG_RESULT([external])
     SYSTEM_NAS=YES
@@ -3012,13 +3017,16 @@ if test -n "$with_system_nas" -o -n "$wi
     )
     AC_CHECK_LIB(audio, AuOpenServer, [],
         [AC_MSG_ERROR(nas not found or functional)], [-L$XLIB -lXt])
+    ENABLE_NAS=YES
 else
     AC_MSG_RESULT([internal])
     SYSTEM_NAS=NO
+    ENABLE_NAS=YES
     BUILD_TYPE="$BUILD_TYPE NAS"
 fi
 AC_SUBST(SYSTEM_NAS)
 AC_SUBST(NAS_INCLUDES)
+AC_SUBST(ENABLE_NAS)
 
 AC_MSG_CHECKING([whether to enable portaudio/sndfile support])
 if test "$_os" != "WINNT" && \
Index: set_soenv.in
===================================================================
RCS file: /cvs/tools/config_office/set_soenv.in,v
retrieving revision 1.70
retrieving revision 1.69.4.2
diff -u -p -u -r1.70 -r1.69.4.2
--- openoffice.org.orig/config_office/set_soenv.in	14 Jul 2005 13:45:49 -0000	1.70
+++ openoffice.org/config_office/set_soenv.in	19 Jul 2005 11:22:03 -0000	1.69.4.2
@@ -1744,6 +1744,7 @@ ToFile( "CURL_LIBS",         "@CURL_LIBS
 ToFile( "SYSTEM_BOOST",      "@SYSTEM_BOOST@",     "e" );
 ToFile( "SYSTEM_NAS",        "@SYSTEM_NAS@",       "e" );
 ToFile( "NAS_INCLUDES",      "@NAS_INCLUDES@",     "e" );
+ToFile( "ENABLE_NAS",        "@ENABLE_NAS@",       "e" );
 ToFile( "ENABLE_PASF",       "@ENABLE_PASF@",      "e" );
 ToFile( "SYSTEM_SNDFILE",    "@SYSTEM_SNDFILE@",   "e" );
 ToFile( "SYSTEM_PORTAUDIO",  "@SYSTEM_PORTAUDIO@", "e" );
Index: icu-2.6.patch
===================================================================
RCS file: /cvs/external/icu/icu-2.6.patch,v
retrieving revision 1.11
retrieving revision 1.11.2.2
diff -u -p -u -r1.11 -r1.11.2.2
--- openoffice.org.orig/icu/icu-2.6.patch	9 Jun 2005 14:29:36 -0000	1.11
+++ openoffice.org/icu/icu-2.6.patch	18 Jul 2005 12:00:04 -0000	1.11.2.2
@@ -1,5 +1,5 @@
-*** misc/icu/source/common/unicode/rbbi.h	Tue Jun 10 20:04:02 2003
---- misc/build/icu/source/common/unicode/rbbi.h	Fri Mar 18 21:38:28 2005
+*** misc/icu/source/common/unicode/rbbi.h	2003-06-10 20:04:02.000000000 +0200
+--- misc/build/icu/source/common/unicode/rbbi.h	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 106,119 ****
       //=======================================================================
@@ -46,8 +46,8 @@
       /** Default constructor.  Creates an empty shell of an iterator, with no
        *  rules or text to iterate over.   Object can subsequently be assigned to.
        *  @draft ICU 2.2
-*** misc/icu/source/config/mh-darwin	Tue Jun  3 22:52:56 2003
---- misc/build/icu/source/config/mh-darwin	Fri Mar 18 21:38:28 2005
+*** misc/icu/source/config/mh-darwin	2003-06-03 22:52:56.000000000 +0200
+--- misc/build/icu/source/config/mh-darwin	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 15,30 ****
   LD_FLAGS += -headerpad_max_install_names
@@ -123,8 +123,8 @@
 ! 	$(RM) $@ && ln -s $*.$(SO).$(SO_TARGET_VERSION) $@
   
   ## End Darwin-specific setup
-*** misc/icu/source/config/mh-irix	Thu Jan 10 03:41:40 2002
---- misc/build/icu/source/config/mh-irix	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/config/mh-irix	2002-01-10 03:41:40.000000000 +0100
+--- misc/build/icu/source/config/mh-irix	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 10,15 ****
 --- 10,19 ----
@@ -138,8 +138,8 @@
   ## Commands to generate dependency files
   GEN_DEPS.c=	$(CC) -E -M $(DEFS) $(CPPFLAGS)
   GEN_DEPS.cc=	$(CXX) -E -M $(DEFS) $(CPPFLAGS)
-*** misc/icu/source/config/mh-linux	Thu Jan 24 18:35:04 2002
---- misc/build/icu/source/config/mh-linux	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/config/mh-linux	2002-01-24 18:35:04.000000000 +0100
+--- misc/build/icu/source/config/mh-linux	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 10,15 ****
 --- 10,18 ----
@@ -168,8 +168,8 @@
   ## Compiler switch to embed a library name
   LD_SONAME = -Wl,-soname -Wl,$(MIDDLE_SO_TARGET)
   
-*** misc/icu/source/config/mh-solaris	Tue Jul 30 04:46:10 2002
---- misc/build/icu/source/config/mh-solaris	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/config/mh-solaris	2002-07-30 04:46:10.000000000 +0200
+--- misc/build/icu/source/config/mh-solaris	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 23,39 ****
   
@@ -215,8 +215,8 @@
   ## Compiler switch to embed a library name
   LD_SONAME = -h $(MIDDLE_SO_TARGET)
   
-*** misc/icu/source/data/icupkg.inc.in	Fri Apr 19 04:19:16 2002
---- misc/build/icu/source/data/icupkg.inc.in	Fri Mar 18 21:38:36 2005
+*** misc/icu/source/data/icupkg.inc.in	2002-04-19 04:19:16.000000000 +0200
+--- misc/build/icu/source/data/icupkg.inc.in	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 16,22 ****
   include $(top_builddir)/icudefs.mk
@@ -227,8 +227,8 @@
   LIBS= LIBS@ 
   ICULIBS=$(LIBS) -licu-uc -licu-i18n
 --- 16,21 ----
-*** misc/icu/source/data/makedata.mak	Tue Jun  3 22:52:56 2003
---- misc/build/icu/source/data/makedata.mak	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/data/makedata.mak	2003-06-03 22:52:56.000000000 +0200
+--- misc/build/icu/source/data/makedata.mak	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 27,32 ****
 --- 27,33 ----
@@ -290,8 +290,8 @@
   
   $(INDEX_RES_FILES):
   	@echo Generating <<res_index.txt
-*** misc/icu/source/data/mappings/ucmcore.mk	Tue Jun  3 22:53:00 2003
---- misc/build/icu/source/data/mappings/ucmcore.mk	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/data/mappings/ucmcore.mk	2003-06-03 22:53:00.000000000 +0200
+--- misc/build/icu/source/data/mappings/ucmcore.mk	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 15,28 ****
   # SJIS (Windows cp932), EUC-JP
@@ -323,8 +323,8 @@
 ! #ibm-1373_P100-2002.ucm\
 ! #ibm-943_P14A-1999.ucm ibm-33722_P12A-1999.ucm\
 ! #ibm-970_P110-1995.ucm ibm-949_P11A-1999.ucm ibm-1363_P11B-1998.ucm
-*** misc/icu/source/data/mappings/ucmebcdic.mk	Tue Jun  3 22:53:00 2003
---- misc/build/icu/source/data/mappings/ucmebcdic.mk	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/data/mappings/ucmebcdic.mk	2003-06-03 22:53:00.000000000 +0200
+--- misc/build/icu/source/data/mappings/ucmebcdic.mk	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 3,27 ****
   # A list of EBCDIC UCM's to build
@@ -378,8 +378,8 @@
 ! #ibm-4899_P100-1998.ucm ibm-4971_P100-1999.ucm ibm-500_P100-1995.ucm\
 ! #ibm-5123_P100-1999.ucm ibm-803_P100-1999.ucm ibm-8482.ucm\
 ! #ibm-16684_P100-1999.ucm
-*** misc/icu/source/data/mappings/ucmfiles.mk	Tue Jun  3 22:53:00 2003
---- misc/build/icu/source/data/mappings/ucmfiles.mk	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/data/mappings/ucmfiles.mk	2003-06-03 22:53:00.000000000 +0200
+--- misc/build/icu/source/data/mappings/ucmfiles.mk	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 25,92 ****
   # ucmebcdic.mk from the <icu>/source/data directory
@@ -519,8 +519,8 @@
 ! #ibm-5478_P100-1995.ucm\
 ! #icu-internal-25546.ucm lmb-excp.ucm
   
-*** misc/icu/source/extra/uconv/uconv.dsp	Wed Jul 31 19:43:14 2002
---- misc/build/icu/source/extra/uconv/uconv.dsp	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/extra/uconv/uconv.dsp	2002-07-31 19:43:14.000000000 +0200
+--- misc/build/icu/source/extra/uconv/uconv.dsp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 219,225 ****
   InputName=makedata
@@ -555,8 +555,8 @@
   
   # End Custom Build
   
-*** misc/icu/source/i18n/tblcoll.cpp	Fri Jun  6 07:05:22 2003
---- misc/build/icu/source/i18n/tblcoll.cpp	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/i18n/tblcoll.cpp	2003-06-06 07:05:22.000000000 +0200
+--- misc/build/icu/source/i18n/tblcoll.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 84,89 ****
 --- 84,101 ----
@@ -578,8 +578,8 @@
   RuleBasedCollator::RuleBasedCollator(const UnicodeString& rules,
                                              UErrorCode& status) :
                                              dataIsOwned(FALSE)
-*** misc/icu/source/i18n/ucol.cpp	Wed Jun 11 01:05:58 2003
---- misc/build/icu/source/i18n/ucol.cpp	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/i18n/ucol.cpp	2003-06-11 01:05:58.000000000 +0200
+--- misc/build/icu/source/i18n/ucol.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 512,517 ****
 --- 512,570 ----
@@ -642,8 +642,8 @@
   ucol_openRules( const UChar        *rules,
                   int32_t            rulesLength,
                   UColAttributeValue normalizationMode,
-*** misc/icu/source/i18n/ucol_imp.h	Wed Jun 11 23:50:54 2003
---- misc/build/icu/source/i18n/ucol_imp.h	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/i18n/ucol_imp.h	2003-06-11 23:50:54.000000000 +0200
+--- misc/build/icu/source/i18n/ucol_imp.h	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 457,462 ****
 --- 457,473 ----
@@ -664,8 +664,8 @@
    * Used to set requested and valid locales on a collator returned by the collator
    * service.
    */
-*** misc/icu/source/i18n/unicode/tblcoll.h	Mon Jun  9 08:13:14 2003
---- misc/build/icu/source/i18n/unicode/tblcoll.h	Fri Mar 18 21:38:30 2005
+*** misc/icu/source/i18n/unicode/tblcoll.h	2003-06-09 08:13:14.000000000 +0200
+--- misc/build/icu/source/i18n/unicode/tblcoll.h	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 119,124 ****
 --- 119,126 ----
@@ -677,8 +677,8 @@
     /**
      * RuleBasedCollator constructor. This takes the table rules and builds a
      * collation table out of them. Please see RuleBasedCollator class
-*** misc/icu/source/icudefs.mk.in	Tue Jun  3 08:44:40 2003
---- misc/build/icu/source/icudefs.mk.in	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/icudefs.mk.in	2003-06-03 08:44:40.000000000 +0200
+--- misc/build/icu/source/icudefs.mk.in	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 136,142 ****
 --- 136,146 ----
@@ -693,8 +693,8 @@
   
   # Versioned target for a shared library.
   FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION)
-*** misc/icu/source/layout/ArabicLayoutEngine.cpp	Tue Jun  3 22:58:22 2003
---- misc/build/icu/source/layout/ArabicLayoutEngine.cpp	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/layout/ArabicLayoutEngine.cpp	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/ArabicLayoutEngine.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 3,8 ****
 --- 3,9 ----
@@ -757,8 +757,61 @@
       GDEFMarkFilter filter(fGDEFTable);
   
       // FIXME: we could avoid the memory allocation and copying here by
-*** misc/icu/source/layout/GXLayoutEngine.cpp	Tue Jun  3 22:58:22 2003
---- misc/build/icu/source/layout/GXLayoutEngine.cpp	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/layout/GlyphIterator.cpp	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/GlyphIterator.cpp	2005-07-18 09:07:29.000000000 +0200
+***************
+*** 297,302 ****
+--- 297,321 ----
+      glyphPositionAdjustments[position].adjustYAdvance(yAdvanceAdjust);
+  }
+  
++ void GlyphIterator::setCurrGlyphPositionAdjustment(float xPlacementAdjust, float yPlacementAdjust,
++                                                       float xAdvanceAdjust, float yAdvanceAdjust)
++ {
++     if (direction < 0) {
++         if (position <= nextLimit || position >= prevLimit) {
++             return;
++         }
++     } else {
++         if (position <= prevLimit || position >= nextLimit) {
++             return;
++         }
++     }
++ 
++     glyphPositionAdjustments[position].setXPlacement(xPlacementAdjust);
++     glyphPositionAdjustments[position].setYPlacement(yPlacementAdjust);
++     glyphPositionAdjustments[position].setXAdvance(xAdvanceAdjust);
++     glyphPositionAdjustments[position].setYAdvance(yAdvanceAdjust);
++ }
++ 
+  void GlyphIterator::setCursiveFirstExitPoint()
+  {
+      if (direction < 0) {
+*** misc/icu/source/layout/GlyphIterator.h	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/GlyphIterator.h	2005-07-18 09:07:29.000000000 +0200
+***************
+*** 61,68 ****
+      void setCurrStreamPosition(le_int32 position);
+      void setCurrGlyphPositionAdjustment(const GlyphPositionAdjustment *adjustment);
+      void setCurrGlyphBaseOffset(le_int32 baseOffset);
+!     void adjustCurrGlyphPositionAdjustment(float xPlacmentAdjust, float yPlacementAdjust,
+                                             float xAdvanceAdjust, float yAdvanceAdjust);
+  
+      void setCursiveFirstExitPoint();
+      void resetCursiveLastExitPoint();
+--- 61,70 ----
+      void setCurrStreamPosition(le_int32 position);
+      void setCurrGlyphPositionAdjustment(const GlyphPositionAdjustment *adjustment);
+      void setCurrGlyphBaseOffset(le_int32 baseOffset);
+!     void adjustCurrGlyphPositionAdjustment(float xPlacementAdjust, float yPlacementAdjust,
+                                             float xAdvanceAdjust, float yAdvanceAdjust);
++     void setCurrGlyphPositionAdjustment(float xPlacementAdjust, float yPlacementAdjust,
++                                         float xAdvanceAdjust, float yAdvanceAdjust);
+  
+      void setCursiveFirstExitPoint();
+      void resetCursiveLastExitPoint();
+*** misc/icu/source/layout/GXLayoutEngine.cpp	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/GXLayoutEngine.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 39,45 ****
           return 0;
@@ -776,8 +829,38 @@
   
       if (LE_FAILURE(success)) {
           return 0;
-*** misc/icu/source/layout/KhmerLayoutEngine.cpp	Wed Apr 20 14:07:25 2005
---- misc/build/icu/source/layout/KhmerLayoutEngine.cpp	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/layout/HebrewShaping.cpp	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/HebrewShaping.cpp	2005-07-18 12:45:25.000000000 +0200
+***************
+*** 12,22 ****
+  U_NAMESPACE_BEGIN
+  
+  const LETag ligaFeatureTag  = 0x6C696761; // 'liga'
+  const LETag emptyTag        = 0x00000000; // ''
+  
+  const LETag hebrewTags[] =
+  {
+!     ligaFeatureTag, emptyTag
+  };
+  
+  void HebrewShaping::shape(const LEUnicode * /*chars*/, le_int32 /*offset*/, le_int32 charCount, le_int32 /*charMax*/,
+--- 12,25 ----
+  U_NAMESPACE_BEGIN
+  
+  const LETag ligaFeatureTag  = 0x6C696761; // 'liga'
++ const LETag ccmpFeatureTag  = 0x63636d70; // 'ccmp'
++ const LETag kernFeatureTag  = 0x6b65726e; // 'kern'
++ const LETag markFeatureTag  = 0x6d61726b; // 'mark'
+  const LETag emptyTag        = 0x00000000; // ''
+  
+  const LETag hebrewTags[] =
+  {
+!     ccmpFeatureTag, kernFeatureTag, markFeatureTag, emptyTag
+  };
+  
+  void HebrewShaping::shape(const LEUnicode * /*chars*/, le_int32 /*offset*/, le_int32 charCount, le_int32 /*charMax*/,
+*** misc/icu/source/layout/KhmerLayoutEngine.cpp	2005-07-18 13:52:48.000000000 +0200
+--- misc/build/icu/source/layout/KhmerLayoutEngine.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 1 ****
 ! dummy
@@ -866,8 +949,8 @@
 ! }
 ! 
 ! U_NAMESPACE_END
-*** misc/icu/source/layout/KhmerLayoutEngine.h	Wed Apr 20 14:07:25 2005
---- misc/build/icu/source/layout/KhmerLayoutEngine.h	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/layout/KhmerLayoutEngine.h	2005-07-18 13:52:48.000000000 +0200
+--- misc/build/icu/source/layout/KhmerLayoutEngine.h	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 1 ****
 ! dummy
@@ -1007,8 +1090,8 @@
 ! U_NAMESPACE_END
 ! #endif
 ! 
-*** misc/icu/source/layout/KhmerReordering.cpp	Wed Apr 20 14:07:25 2005
---- misc/build/icu/source/layout/KhmerReordering.cpp	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/layout/KhmerReordering.cpp	2005-07-18 13:52:48.000000000 +0200
+--- misc/build/icu/source/layout/KhmerReordering.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 1 ****
 ! dummy
@@ -1544,8 +1627,8 @@
 ! 
 ! 
 ! U_NAMESPACE_END
-*** misc/icu/source/layout/KhmerReordering.h	Wed Apr 20 14:07:25 2005
---- misc/build/icu/source/layout/KhmerReordering.h	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/layout/KhmerReordering.h	2005-07-18 13:52:48.000000000 +0200
+--- misc/build/icu/source/layout/KhmerReordering.h	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 1 ****
 ! dummy
@@ -1684,8 +1767,166 @@
 ! 
 ! U_NAMESPACE_END
 ! #endif
-*** misc/icu/source/layout/LESwaps.h	Tue Jun  3 22:58:22 2003
---- misc/build/icu/source/layout/LESwaps.h	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/layout/layout.dsp	2003-04-12 02:37:12.000000000 +0200
+--- misc/build/icu/source/layout/layout.dsp	2005-07-18 09:07:29.000000000 +0200
+***************
+*** 254,259 ****
+--- 254,263 ----
+  # End Source File
+  # Begin Source File
+  
++ SOURCE=.\KhmerLayoutEngine.cpp
++ # End Source File
++ # Begin Source File
++ 
+  SOURCE=.\IndicRearrangementProcessor.cpp
+  # End Source File
+  # Begin Source File
+***************
+*** 262,267 ****
+--- 266,275 ----
+  # End Source File
+  # Begin Source File
+  
++ SOURCE=.\KhmerReordering.cpp
++ # End Source File
++ # Begin Source File
++ 
+  SOURCE=.\LayoutEngine.cpp
+  # End Source File
+  # Begin Source File
+***************
+*** 522,527 ****
+--- 530,539 ----
+  # End Source File
+  # Begin Source File
+  
++ SOURCE=.\KhmerLayoutEngine.h
++ # End Source File
++ # Begin Source File
++ 
+  SOURCE=.\IndicRearrangement.h
+  # End Source File
+  # Begin Source File
+***************
+*** 534,539 ****
+--- 546,555 ----
+  # End Source File
+  # Begin Source File
+  
++ SOURCE=.\KhmerReordering.h
++ # End Source File
++ # Begin Source File
++ 
+  SOURCE=.\LayoutEngine.h
+  
+  !IF  "$(CFG)" == "layout - Win32 Release"
+*** misc/icu/source/layout/LayoutEngine.cpp	2003-06-05 00:39:18.000000000 +0200
+--- misc/build/icu/source/layout/LayoutEngine.cpp	2005-07-18 09:36:10.000000000 +0200
+***************
+*** 14,19 ****
+--- 14,20 ----
+  #include "ArabicLayoutEngine.h"
+  #include "HanLayoutEngine.h"
+  #include "IndicLayoutEngine.h"
++ #include "KhmerLayoutEngine.h"
+  #include "ThaiLayoutEngine.h"
+  #include "GXLayoutEngine.h"
+  #include "ScriptAndLanguageTags.h"
+***************
+*** 428,433 ****
+--- 429,435 ----
+              break;
+  
+          case arabScriptCode:
++         case hebrScriptCode:
+              result = new ArabicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, gsubTable);
+              break;
+  
+***************
+*** 452,457 ****
+--- 454,463 ----
+  
+              break;
+  
++         case khmrScriptCode:
++             result = new KhmerOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, gsubTable);
++             break;
++ 
+          default:
+              result = new OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, gsubTable);
+              break;
+*** misc/icu/source/layout/layoutobj.inc	2000-11-14 23:15:30.000000000 +0100
+--- misc/build/icu/source/layout/layoutobj.inc	2005-07-18 09:07:29.000000000 +0200
+***************
+*** 8,13 ****
+--- 8,14 ----
+  ArabicLayoutEngine.o \
+  GXLayoutEngine.o \
+  IndicLayoutEngine.o \
++ KhmerLayoutEngine.o \
+  LayoutEngine.o
+  
+  # aat/
+***************
+*** 48,53 ****
+--- 49,55 ----
+  HebrewShaping.o \
+  IndicClassTables.o \
+  IndicReordering.o \
++ KhmerReordering.o \
+  LigatureSubstitutionSubtables.o \
+  LookupProcessor.o \
+  Lookups.o \
+*** misc/icu/source/layout/layout.vcproj	2003-05-01 00:50:20.000000000 +0200
+--- misc/build/icu/source/layout/layout.vcproj	2005-07-18 09:07:29.000000000 +0200
+***************
+*** 215,226 ****
+--- 215,232 ----
+  				RelativePath=".\IndicLayoutEngine.cpp">
+  			</File>
+  			<File
++ 				RelativePath=".\KhmerLayoutEngine.cpp">
++ 			</File>
++ 			<File
+  				RelativePath=".\IndicRearrangementProcessor.cpp">
+  			</File>
+  			<File
+  				RelativePath=".\IndicReordering.cpp">
+  			</File>
+  			<File
++ 				RelativePath=".\KhmerReordering.cpp">
++ 			</File>
++ 			<File
+  				RelativePath=".\LEFontInstance.cpp">
+  			</File>
+  			<File
+***************
+*** 417,422 ****
+--- 423,431 ----
+  				RelativePath=".\IndicLayoutEngine.h">
+  			</File>
+  			<File
++ 				RelativePath=".\KhmerLayoutEngine.h">
++ 			</File>
++ 			<File
+  				RelativePath=".\IndicRearrangement.h">
+  			</File>
+  			<File
+***************
+*** 426,431 ****
+--- 435,443 ----
+  				RelativePath=".\IndicReordering.h">
+  			</File>
+  			<File
++ 				RelativePath=".\KhmerReordering.h">
++ 			</File>
++ 			<File
+  				RelativePath=".\LEFontInstance.h">
+  				<FileConfiguration
+  					Name="Debug|Win32">
+*** misc/icu/source/layout/LESwaps.h	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/LESwaps.h	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 3,8 ****
 --- 3,9 ----
@@ -1758,33 +1999,8 @@
   
   /**
    * This class is used to access data which stored in big endian order
-*** misc/icu/source/layout/LayoutEngine.cpp	Thu Jun  5 00:39:18 2003
---- misc/build/icu/source/layout/LayoutEngine.cpp	Fri Mar 18 21:38:32 2005
-***************
-*** 14,19 ****
---- 14,20 ----
-  #include "ArabicLayoutEngine.h"
-  #include "HanLayoutEngine.h"
-  #include "IndicLayoutEngine.h"
-+ #include "KhmerLayoutEngine.h"
-  #include "ThaiLayoutEngine.h"
-  #include "GXLayoutEngine.h"
-  #include "ScriptAndLanguageTags.h"
-***************
-*** 452,457 ****
---- 453,462 ----
-  
-              break;
-  
-+         case khmrScriptCode:
-+             result = new KhmerOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, gsubTable);
-+             break;
-+ 
-          default:
-              result = new OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, gsubTable);
-              break;
-*** misc/icu/source/layout/LookupProcessor.cpp	Tue Jun  3 22:58:22 2003
---- misc/build/icu/source/layout/LookupProcessor.cpp	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/layout/LookupProcessor.cpp	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/LookupProcessor.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 92,106 ****
   le_int32 LookupProcessor::selectLookups(const FeatureTable *featureTable, LETag featureTag, le_int32 order)
@@ -1834,8 +2050,8 @@
    
               featureTable = featureListTable->getFeatureTable(featureIndex, &featureTag);
               count = selectLookups(featureTable, featureTag, order);
-*** misc/icu/source/layout/Makefile.in	Tue Jun  3 22:58:22 2003
---- misc/build/icu/source/layout/Makefile.in	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/layout/Makefile.in	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/Makefile.in	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 52,57 ****
 --- 52,58 ----
@@ -1856,8 +2072,107 @@
   LigatureSubstSubtables.o \
   LookupProcessor.o \
   Lookups.o \
-*** misc/icu/source/layout/OpenTypeLayoutEngine.h	Tue Jun  3 22:58:22 2003
---- misc/build/icu/source/layout/OpenTypeLayoutEngine.h	Fri Mar 18 21:38:32 2005
+*** misc/icu/source/layout/MarkToBasePosnSubtables.cpp	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/MarkToBasePosnSubtables.cpp	2005-07-18 09:07:29.000000000 +0200
+***************
+*** 78,91 ****
+      glyphIterator->setCurrGlyphBaseOffset(baseIterator.getCurrStreamPosition());
+  
+      if (glyphIterator->isRightToLeft()) {
+!         glyphIterator->adjustCurrGlyphPositionAdjustment(anchorDiffX, anchorDiffY, -markAdvance.fX, -markAdvance.fY);
+      } else {
+          LEPoint baseAdvance;
+  
+          fontInstance->getGlyphAdvance(baseGlyph, pixels);
+          fontInstance->pixelsToUnits(pixels, baseAdvance);
+  
+!         glyphIterator->adjustCurrGlyphPositionAdjustment(anchorDiffX - baseAdvance.fX, anchorDiffY - baseAdvance.fY, -markAdvance.fX, -markAdvance.fY);
+      }
+  
+      return 1;
+--- 78,91 ----
+      glyphIterator->setCurrGlyphBaseOffset(baseIterator.getCurrStreamPosition());
+  
+      if (glyphIterator->isRightToLeft()) {
+!         glyphIterator->setCurrGlyphPositionAdjustment(anchorDiffX, anchorDiffY, -markAdvance.fX, -markAdvance.fY);
+      } else {
+          LEPoint baseAdvance;
+  
+          fontInstance->getGlyphAdvance(baseGlyph, pixels);
+          fontInstance->pixelsToUnits(pixels, baseAdvance);
+  
+!         glyphIterator->setCurrGlyphPositionAdjustment(anchorDiffX - baseAdvance.fX, anchorDiffY - baseAdvance.fY, -markAdvance.fX, -markAdvance.fY);
+      }
+  
+      return 1;
+*** misc/icu/source/layout/MarkToLigaturePosnSubtables.cpp	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/MarkToLigaturePosnSubtables.cpp	2005-07-18 09:07:29.000000000 +0200
+***************
+*** 89,102 ****
+      glyphIterator->setCurrGlyphBaseOffset(ligatureIterator.getCurrStreamPosition());
+  
+      if (glyphIterator->isRightToLeft()) {
+!         glyphIterator->adjustCurrGlyphPositionAdjustment(anchorDiffX, anchorDiffY, -markAdvance.fX, -markAdvance.fY);
+      } else {
+          LEPoint ligatureAdvance;
+  
+          fontInstance->getGlyphAdvance(ligatureGlyph, pixels);
+          fontInstance->pixelsToUnits(pixels, ligatureAdvance);
+  
+!         glyphIterator->adjustCurrGlyphPositionAdjustment(anchorDiffX - ligatureAdvance.fX, anchorDiffY - ligatureAdvance.fY, -markAdvance.fX, -markAdvance.fY);
+      }
+  
+      return 1;
+--- 89,102 ----
+      glyphIterator->setCurrGlyphBaseOffset(ligatureIterator.getCurrStreamPosition());
+  
+      if (glyphIterator->isRightToLeft()) {
+!         glyphIterator->setCurrGlyphPositionAdjustment(anchorDiffX, anchorDiffY, -markAdvance.fX, -markAdvance.fY);
+      } else {
+          LEPoint ligatureAdvance;
+  
+          fontInstance->getGlyphAdvance(ligatureGlyph, pixels);
+          fontInstance->pixelsToUnits(pixels, ligatureAdvance);
+  
+!         glyphIterator->setCurrGlyphPositionAdjustment(anchorDiffX - ligatureAdvance.fX, anchorDiffY - ligatureAdvance.fY, -markAdvance.fX, -markAdvance.fY);
+      }
+  
+      return 1;
+*** misc/icu/source/layout/MarkToMarkPosnSubtables.cpp	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/MarkToMarkPosnSubtables.cpp	2005-07-18 09:07:29.000000000 +0200
+***************
+*** 78,91 ****
+      glyphIterator->setCurrGlyphBaseOffset(mark2Iterator.getCurrStreamPosition());
+  
+      if (glyphIterator->isRightToLeft()) {
+!         glyphIterator->adjustCurrGlyphPositionAdjustment(anchorDiffX, anchorDiffY, -markAdvance.fX, -markAdvance.fY);
+      } else {
+          LEPoint mark2Advance;
+  
+          fontInstance->getGlyphAdvance(mark2Glyph, pixels);
+          fontInstance->pixelsToUnits(pixels, mark2Advance);
+  
+!         glyphIterator->adjustCurrGlyphPositionAdjustment(anchorDiffX - mark2Advance.fX, anchorDiffY - mark2Advance.fY, -markAdvance.fX, -markAdvance.fY);
+      }
+  
+      return 1;
+--- 78,91 ----
+      glyphIterator->setCurrGlyphBaseOffset(mark2Iterator.getCurrStreamPosition());
+  
+      if (glyphIterator->isRightToLeft()) {
+!         glyphIterator->setCurrGlyphPositionAdjustment(anchorDiffX, anchorDiffY, -markAdvance.fX, -markAdvance.fY);
+      } else {
+          LEPoint mark2Advance;
+  
+          fontInstance->getGlyphAdvance(mark2Glyph, pixels);
+          fontInstance->pixelsToUnits(pixels, mark2Advance);
+  
+!         glyphIterator->setCurrGlyphPositionAdjustment(anchorDiffX - mark2Advance.fX, anchorDiffY - mark2Advance.fY, -markAdvance.fX, -markAdvance.fY);
+      }
+  
+      return 1;
+*** misc/icu/source/layout/OpenTypeLayoutEngine.h	2003-06-03 22:58:22.000000000 +0200
+--- misc/build/icu/source/layout/OpenTypeLayoutEngine.h	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 319,324 ****
 --- 319,337 ----
@@ -1880,131 +2195,8 @@
           return tempGlyphCount;
       };
   
-*** misc/icu/source/layout/layout.dsp	Sat Apr 12 02:37:12 2003
---- misc/build/icu/source/layout/layout.dsp	Fri Mar 18 21:38:32 2005
-***************
-*** 254,259 ****
---- 254,263 ----
-  # End Source File
-  # Begin Source File
-  
-+ SOURCE=.\KhmerLayoutEngine.cpp
-+ # End Source File
-+ # Begin Source File
-+ 
-  SOURCE=.\IndicRearrangementProcessor.cpp
-  # End Source File
-  # Begin Source File
-***************
-*** 262,267 ****
---- 266,275 ----
-  # End Source File
-  # Begin Source File
-  
-+ SOURCE=.\KhmerReordering.cpp
-+ # End Source File
-+ # Begin Source File
-+ 
-  SOURCE=.\LayoutEngine.cpp
-  # End Source File
-  # Begin Source File
-***************
-*** 522,527 ****
---- 530,539 ----
-  # End Source File
-  # Begin Source File
-  
-+ SOURCE=.\KhmerLayoutEngine.h
-+ # End Source File
-+ # Begin Source File
-+ 
-  SOURCE=.\IndicRearrangement.h
-  # End Source File
-  # Begin Source File
-***************
-*** 534,539 ****
---- 546,555 ----
-  # End Source File
-  # Begin Source File
-  
-+ SOURCE=.\KhmerReordering.h
-+ # End Source File
-+ # Begin Source File
-+ 
-  SOURCE=.\LayoutEngine.h
-  
-  !IF  "$(CFG)" == "layout - Win32 Release"
-*** misc/icu/source/layout/layout.vcproj	Thu May  1 00:50:20 2003
---- misc/build/icu/source/layout/layout.vcproj	Fri Mar 18 21:38:32 2005
-***************
-*** 215,226 ****
---- 215,232 ----
-  				RelativePath=".\IndicLayoutEngine.cpp">
-  			</File>
-  			<File
-+ 				RelativePath=".\KhmerLayoutEngine.cpp">
-+ 			</File>
-+ 			<File
-  				RelativePath=".\IndicRearrangementProcessor.cpp">
-  			</File>
-  			<File
-  				RelativePath=".\IndicReordering.cpp">
-  			</File>
-  			<File
-+ 				RelativePath=".\KhmerReordering.cpp">
-+ 			</File>
-+ 			<File
-  				RelativePath=".\LEFontInstance.cpp">
-  			</File>
-  			<File
-***************
-*** 417,422 ****
---- 423,431 ----
-  				RelativePath=".\IndicLayoutEngine.h">
-  			</File>
-  			<File
-+ 				RelativePath=".\KhmerLayoutEngine.h">
-+ 			</File>
-+ 			<File
-  				RelativePath=".\IndicRearrangement.h">
-  			</File>
-  			<File
-***************
-*** 426,431 ****
---- 435,443 ----
-  				RelativePath=".\IndicReordering.h">
-  			</File>
-  			<File
-+ 				RelativePath=".\KhmerReordering.h">
-+ 			</File>
-+ 			<File
-  				RelativePath=".\LEFontInstance.h">
-  				<FileConfiguration
-  					Name="Debug|Win32">
-*** misc/icu/source/layout/layoutobj.inc	Tue Nov 14 23:15:30 2000
---- misc/build/icu/source/layout/layoutobj.inc	Fri Mar 18 21:38:34 2005
-***************
-*** 8,13 ****
---- 8,14 ----
-  ArabicLayoutEngine.o \
-  GXLayoutEngine.o \
-  IndicLayoutEngine.o \
-+ KhmerLayoutEngine.o \
-  LayoutEngine.o
-  
-  # aat/
-***************
-*** 48,53 ****
---- 49,55 ----
-  HebrewShaping.o \
-  IndicClassTables.o \
-  IndicReordering.o \
-+ KhmerReordering.o \
-  LigatureSubstitutionSubtables.o \
-  LookupProcessor.o \
-  Lookups.o \
-*** misc/icu/source/test/ieeetest/ieeetest.cpp	Wed Mar 21 20:46:50 2001
---- misc/build/icu/source/test/ieeetest/ieeetest.cpp	Fri Mar 18 21:38:34 2005
+*** misc/icu/source/test/ieeetest/ieeetest.cpp	2001-03-21 20:46:50.000000000 +0100
+--- misc/build/icu/source/test/ieeetest/ieeetest.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 13,23 ****
   *******************************************************************************
@@ -2030,8 +2222,8 @@
   #include "unicode/putil.h"
   
   //==============================
-*** misc/icu/source/test/intltest/loctest.cpp	Thu Jun  5 01:56:50 2003
---- misc/build/icu/source/test/intltest/loctest.cpp	Fri Mar 18 21:38:34 2005
+*** misc/icu/source/test/intltest/loctest.cpp	2003-06-05 01:56:50.000000000 +0200
+--- misc/build/icu/source/test/intltest/loctest.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 4,9 ****
 --- 4,10 ----
@@ -2042,8 +2234,8 @@
   #include "loctest.h"
   #include <stdio.h>
   #include <string.h>
-*** misc/icu/source/test/intltest/testidn.cpp	Mon Jun  9 06:54:46 2003
---- misc/build/icu/source/test/intltest/testidn.cpp	Fri Mar 18 21:38:34 2005
+*** misc/icu/source/test/intltest/testidn.cpp	2003-06-09 06:54:46.000000000 +0200
+--- misc/build/icu/source/test/intltest/testidn.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 19,27 ****
   *   in various IDNA conversion processes.
@@ -2065,8 +2257,8 @@
   
   #if !UCONFIG_NO_IDNA && !UCONFIG_NO_TRANSLITERATION
   
-*** misc/icu/source/test/intltest/tsmutex.cpp	Fri May 24 01:56:48 2002
---- misc/build/icu/source/test/intltest/tsmutex.cpp	Fri Mar 18 21:38:34 2005
+*** misc/icu/source/test/intltest/tsmutex.cpp	2002-05-24 01:56:48.000000000 +0200
+--- misc/build/icu/source/test/intltest/tsmutex.cpp	2005-07-18 09:07:29.000000000 +0200
 ***************
 *** 4,9 ****
 --- 4,10 ----
@@ -2077,8 +2269,8 @@
   #include "tsmutex.h"
   #include <stdio.h>
   #include <string.h>
-*** misc/icu/source/test/intltest/tsputil.cpp	Fri Oct  5 20:47:10 2001
---- misc/build/icu/source/test/intltest/tsputil.cpp	Fri Mar 18 21:38:34 2005
+*** misc/icu/source/test/intltest/tsputil.cpp	2001-10-05 20:47:10.000000000 +0200
+--- misc/build/icu/source/test/intltest/tsputil.cpp	2005-07-18 09:07:30.000000000 +0200
 ***************
 *** 4,9 ****
 --- 4,10 ----
@@ -2089,8 +2281,8 @@
   #include "tsputil.h"
   
   #include <float.h> // DBL_MAX, DBL_MIN
-*** misc/icu/source/test/intltest/uobjtest.cpp	Tue Jun  3 22:56:50 2003
---- misc/build/icu/source/test/intltest/uobjtest.cpp	Fri Mar 18 21:38:34 2005
+*** misc/icu/source/test/intltest/uobjtest.cpp	2003-06-03 22:56:50.000000000 +0200
+--- misc/build/icu/source/test/intltest/uobjtest.cpp	2005-07-18 09:07:30.000000000 +0200
 ***************
 *** 4,9 ****
 --- 4,10 ----
@@ -2101,8 +2293,8 @@
   #include "uobjtest.h"
   #include <string.h>
   
-*** misc/icu/source/test/intltest/ustrtest.cpp	Fri May  9 18:15:50 2003
---- misc/build/icu/source/test/intltest/ustrtest.cpp	Fri Mar 18 21:38:34 2005
+*** misc/icu/source/test/intltest/ustrtest.cpp	2003-05-09 18:15:50.000000000 +0200
+--- misc/build/icu/source/test/intltest/ustrtest.cpp	2005-07-18 09:07:30.000000000 +0200
 ***************
 *** 4,9 ****
 --- 4,10 ----
@@ -2113,8 +2305,8 @@
   #include "ustrtest.h"
   #include "unicode/unistr.h"
   #include "unicode/uchar.h"
-*** misc/icu/source/tools/genbrk/genbrk.cpp	Tue Jun  3 22:56:52 2003
---- misc/build/icu/source/tools/genbrk/genbrk.cpp	Fri Mar 18 21:38:34 2005
+*** misc/icu/source/tools/genbrk/genbrk.cpp	2003-06-03 22:56:52.000000000 +0200
+--- misc/build/icu/source/tools/genbrk/genbrk.cpp	2005-07-18 09:07:30.000000000 +0200
 ***************
 *** 26,33 ****
   //
@@ -2134,8 +2326,8 @@
   #include "unicode/ucnv.h"
   #include "unicode/unistr.h"
   #include "unicode/rbbi.h"
-*** misc/icu/source/tools/gennorm/gennorm.c	Tue May  6 03:36:14 2003
---- misc/build/icu/source/tools/gennorm/gennorm.c	Fri Mar 18 21:38:34 2005
+*** misc/icu/source/tools/gennorm/gennorm.c	2003-05-06 03:36:14.000000000 +0200
+--- misc/build/icu/source/tools/gennorm/gennorm.c	2005-07-18 09:07:30.000000000 +0200
 ***************
 *** 241,249 ****
               return;
@@ -2157,8 +2349,8 @@
               qcFlags&=0x30;
           } else {
               return;
-*** misc/icu/source/tools/genpname/genpname.cpp	Wed Jun  4 00:23:50 2003
---- misc/build/icu/source/tools/genpname/genpname.cpp	Fri Mar 18 21:38:36 2005
+*** misc/icu/source/tools/genpname/genpname.cpp	2003-06-04 00:23:50.000000000 +0200
+--- misc/build/icu/source/tools/genpname/genpname.cpp	2005-07-18 09:07:30.000000000 +0200
 ***************
 *** 8,16 ****
   **********************************************************************
@@ -2180,8 +2372,8 @@
   #include "unicode/putil.h"
   #include "cmemory.h"
   #include "cstring.h"
-*** misc/icu/source/tools/gentz/gentz.cpp	Tue Jun  3 22:56:54 2003
---- misc/build/icu/source/tools/gentz/gentz.cpp	Fri Mar 18 21:38:36 2005
+*** misc/icu/source/tools/gentz/gentz.cpp	2003-06-03 22:56:54.000000000 +0200
+--- misc/build/icu/source/tools/gentz/gentz.cpp	2005-07-18 09:07:30.000000000 +0200
 ***************
 *** 25,33 ****
    * See tz.pl for the file format that is READ by this program.
@@ -2203,8 +2395,8 @@
   #include "unicode/putil.h"
   #include "cmemory.h"
   #include "cstring.h"
-*** misc/icu/source/tools/genuca/genuca.cpp	Tue Jun  3 22:56:54 2003
---- misc/build/icu/source/tools/genuca/genuca.cpp	Fri Mar 18 21:38:36 2005
+*** misc/icu/source/tools/genuca/genuca.cpp	2003-06-03 22:56:54.000000000 +0200
+--- misc/build/icu/source/tools/genuca/genuca.cpp	2005-07-18 09:07:30.000000000 +0200
 ***************
 *** 23,30 ****
   *   05/09/2001  weiv                    Case bits are now in the CEs, not in front
@@ -2224,8 +2416,8 @@
   #include "unicode/udata.h"
   #include "ucol_imp.h"
   #include "genuca.h"
-*** misc/icu/source/tools/pkgdata/dllmode.c	Tue Jun  3 22:56:54 2003
---- misc/build/icu/source/tools/pkgdata/dllmode.c	Wed Apr 20 14:04:47 2005
+*** misc/icu/source/tools/pkgdata/dllmode.c	2003-06-03 22:56:54.000000000 +0200
+--- misc/build/icu/source/tools/pkgdata/dllmode.c	2005-07-18 09:07:30.000000000 +0200
 ***************
 *** 131,137 ****
       }
@@ -2277,8 +2469,8 @@
                                        "\n");
   #else
       
-*** misc/icu/source/tools/pkgdata/gmake.c	Tue Aug  6 21:06:32 2002
---- misc/build/icu/source/tools/pkgdata/gmake.c	Wed Apr 20 14:06:42 2005
+*** misc/icu/source/tools/pkgdata/gmake.c	2002-08-06 21:06:32.000000000 +0200
+--- misc/build/icu/source/tools/pkgdata/gmake.c	2005-07-18 09:07:30.000000000 +0200
 ***************
 *** 203,209 ****
         commands = pkg_appendToList(commands, NULL, uprv_strdup(stanza));
Index: inc/ZipPackageFolder.hxx
===================================================================
RCS file: /cvs/xml/package/inc/ZipPackageFolder.hxx,v
retrieving revision 1.33
retrieving revision 1.33.2.1
diff -u -p -u -r1.33 -r1.33.2.1
--- openoffice.org.orig/package/inc/ZipPackageFolder.hxx	12 Jul 2005 12:28:10 -0000	1.33
+++ openoffice.org/package/inc/ZipPackageFolder.hxx	19 Jul 2005 13:48:39 -0000	1.33.2.1
@@ -121,7 +121,7 @@ public:
 	}
 
 	void setPackageFormat_Impl( sal_Bool bPackageFormat ) { m_bPackageFormat = bPackageFormat; }
-	void setRemoveOnInsertMode_Impl( sal_Bool bRemove ) { ZipPackageEntry::mbAllowRemoveOnInsert = bRemove; }
+	void setRemoveOnInsertMode_Impl( sal_Bool bRemove ) { this->mbAllowRemoveOnInsert = bRemove; }
 
 	// Recursive functions
 	void  saveContents(rtl::OUString &rPath, std::vector < com::sun::star::uno::Sequence < com::sun::star::beans::PropertyValue > > &rManList, ZipOutputStream & rZipOut, com::sun::star::uno::Sequence < sal_Int8 > &rEncryptionKey, rtlRandomPool & rRandomPool)
Index: source/zippackage/ZipPackageFolder.cxx
===================================================================
RCS file: /cvs/xml/package/source/zippackage/ZipPackageFolder.cxx,v
retrieving revision 1.74
retrieving revision 1.74.2.1
diff -u -p -u -r1.74 -r1.74.2.1
--- openoffice.org.orig/package/source/zippackage/ZipPackageFolder.cxx	12 Jul 2005 12:31:33 -0000	1.74
+++ openoffice.org/package/source/zippackage/ZipPackageFolder.cxx	19 Jul 2005 13:48:40 -0000	1.74.2.1
@@ -128,7 +128,7 @@ ZipPackageFolder::ZipPackageFolder ( con
 {
 	OSL_ENSURE( m_xFactory.is(), "No factory is provided to the package folder!" );
 
-	ZipPackageEntry::mbAllowRemoveOnInsert = bAllowRemoveOnInsert;
+	this->mbAllowRemoveOnInsert = bAllowRemoveOnInsert;
 
 	SetFolder ( sal_True );
 	aEntry.nVersion		= -1;
Index: source/zippackage/ZipPackageStream.cxx
===================================================================
RCS file: /cvs/xml/package/source/zippackage/ZipPackageStream.cxx,v
retrieving revision 1.41
retrieving revision 1.41.2.1
diff -u -p -u -r1.41 -r1.41.2.1
--- openoffice.org.orig/package/source/zippackage/ZipPackageStream.cxx	12 Jul 2005 12:31:48 -0000	1.41
+++ openoffice.org/package/source/zippackage/ZipPackageStream.cxx	19 Jul 2005 13:48:40 -0000	1.41.2.1
@@ -137,7 +137,7 @@ ZipPackageStream::ZipPackageStream ( Zip
 { 
 	OSL_ENSURE( m_xFactory.is(), "No factory is provided to ZipPackageStream!\n" );
 
-	ZipPackageEntry::mbAllowRemoveOnInsert = bAllowRemoveOnInsert;
+	this->mbAllowRemoveOnInsert = bAllowRemoveOnInsert;
 
 	SetFolder ( sal_False );
 	aEntry.nVersion		= -1;
Index: source/printer/printerinfomanager.cxx
===================================================================
RCS file: /cvs/gsl/psprint/source/printer/printerinfomanager.cxx,v
retrieving revision 1.29
retrieving revision 1.29.16.1
diff -u -p -u -r1.29 -r1.29.16.1
--- openoffice.org.orig/psprint/source/printer/printerinfomanager.cxx	31 May 2005 17:02:11 -0000	1.29
+++ openoffice.org/psprint/source/printer/printerinfomanager.cxx	11 Jul 2005 12:11:07 -0000	1.29.16.1
@@ -1240,8 +1240,7 @@ FILE* PrinterInfoManager::startSpool( co
 
 int PrinterInfoManager::endSpool( const OUString& rPrintername, const OUString& rJobTitle, FILE* pFile, const JobData& rDocumentJobData )
 {
-    pclose( pFile );
-    return 0; // job id ?
+    return (0 == pclose( pFile ));
 }
 
 void PrinterInfoManager::setupJobContextData( JobData& rData )
Index: source/printergfx/printerjob.cxx
===================================================================
RCS file: /cvs/gsl/psprint/source/printergfx/printerjob.cxx,v
retrieving revision 1.30
retrieving revision 1.30.16.1
diff -u -p -u -r1.30 -r1.30.16.1
--- openoffice.org.orig/psprint/source/printergfx/printerjob.cxx	31 May 2005 17:02:25 -0000	1.30
+++ openoffice.org/psprint/source/printergfx/printerjob.cxx	11 Jul 2005 12:11:07 -0000	1.30.16.1
@@ -682,7 +682,11 @@ PrinterJob::EndJob ()
 #ifndef MACOSX
     {
         PrinterInfoManager& rPrinterInfoManager = PrinterInfoManager::get();
-        rPrinterInfoManager.endSpool( m_aLastJobData.m_aPrinterName, maJobTitle, pDestFILE, m_aDocumentJobData );
+        if (0 == rPrinterInfoManager.endSpool( m_aLastJobData.m_aPrinterName, 
+			maJobTitle, pDestFILE, m_aDocumentJobData ))
+		{
+			bSuccess = sal_False;
+		}
     }
 #else
     {
Index: source/view/prnmon.cxx
===================================================================
RCS file: /cvs/framework/sfx2/source/view/prnmon.cxx,v
retrieving revision 1.13
retrieving revision 1.13.300.1
diff -u -p -u -r1.13 -r1.13.300.1
--- openoffice.org.orig/sfx2/source/view/prnmon.cxx	17 Nov 2004 15:34:57 -0000	1.13
+++ openoffice.org/sfx2/source/view/prnmon.cxx	11 Jul 2005 15:01:22 -0000	1.13.300.1
@@ -401,12 +401,21 @@ IMPL_LINK_INLINE_START( SfxPrintProgress
 {
 	if ( pImp->pMonitor )
 		pImp->pMonitor->Hide();
+    // AbortJob calls EndPrint hdl, so do not delete pImp just now
+    BOOL bWasDeleteOnEndPrint = pImp->bDeleteOnEndPrint;
+    pImp->bDeleteOnEndPrint = FALSE;
 	pImp->pPrinter->AbortJob();
 	InfoBox( pImp->GetViewShell()->GetWindow(),
 			 String( SfxResId(STR_ERROR_PRINT) ) ).Execute();
     if ( pImp->bRestoreFlag && pImp->pViewShell->GetObjectShell()->IsEnableSetModified() != pImp->bOldFlag )
         pImp->pViewShell->GetObjectShell()->EnableSetModified( pImp->bOldFlag );
 	pImp->GetViewShell()->GetObjectShell()->Broadcast( SfxPrintingHint( com::sun::star::view::PrintableState_JOB_FAILED, NULL, NULL ) );
+    // now we can clean up like normally EndPrint hdl does
+    if( bWasDeleteOnEndPrint )
+    {
+		DELETEZ(pImp->pMonitor);
+		delete this;
+    }
 	return 0;
 }
 IMPL_LINK_INLINE_END( SfxPrintProgress, PrintErrorNotify, void *, pvoid )
Index: config/ssolar.cmn
===================================================================
RCS file: /cvs/tools/solenv/config/ssolar.cmn,v
retrieving revision 1.52
retrieving revision 1.51.130.2
diff -u -p -u -r1.52 -r1.51.130.2
--- openoffice.org.orig/solenv/config/ssolar.cmn	14 Jul 2005 15:38:22 -0000	1.52
+++ openoffice.org/solenv/config/ssolar.cmn	19 Jul 2005 11:12:34 -0000	1.51.130.2
@@ -71,6 +71,7 @@ common
         ENABLE_GNOMEVFS
         ENABLE_KDE
         ENABLE_PASF
+        ENABLE_NAS
 		ENABLEUNICODE
         HAVE_GCC_VISIBILITY_FEATURE
 		GCRINC
Index: config/ssrc680.ini
===================================================================
RCS file: /cvs/tools/solenv/config/ssrc680.ini,v
retrieving revision 1.73
retrieving revision 1.72.8.2
diff -u -p -u -r1.73 -r1.72.8.2
--- openoffice.org.orig/solenv/config/ssrc680.ini	14 Jul 2005 15:37:37 -0000	1.73
+++ openoffice.org/solenv/config/ssrc680.ini	19 Jul 2005 11:12:41 -0000	1.72.8.2
@@ -477,6 +477,7 @@ unxsoli4
 		OLD_CHAOS
 		TFDEF
 		CLASSPATH
+        ENABLE_NAS
 	}
 	switches
 	{
@@ -675,6 +676,7 @@ unxsoli4
 			COMMON_BUILD_TOOLS %SOLARROOT%$/btools
 			COMMON_ENV_TOOLS %SOLARROOT%$/etools
 			SYSBASE	%SOLAR_SYSBASE_ROOT%
+            ENABLE_NAS TRUE
 		}
 		localini IF X%LOCALINI%X != XX
 		{
@@ -773,6 +775,7 @@ unxsols4
 		OLD_CHAOS
 		TFDEF
 		CLASSPATH
+        ENABLE_NAS
 	}
 	switches
 	{
@@ -998,6 +1001,7 @@ unxsols4
 			COMMON_BUILD_TOOLS %SOLARROOT%$/btools
 			COMMON_ENV_TOOLS %SOLARROOT%$/etools
 			SYSBASE	%SOLAR_SYSBASE_ROOT%
+            ENABLE_NAS TRUE
 		}
 		localini IF X%LOCALINI%X != XX
 		{
@@ -2064,6 +2068,7 @@ unxlngi6
 		COPYALL
 		GXX_INCLUDE_PATH
         ENABLE_PASF
+        ENABLE_NAS
 	}
 	restore
 	{
@@ -2230,6 +2235,7 @@ unxlngi6
 			CPUNAME INTEL
 			DLLSUFFIX li
             ENABLE_PASF TRUE
+            ENABLE_NAS TRUE
 			INPATH unxlngi6%PROEXT%
 			GVERDIR unxlngi6%PROEXT%
 			OUTPATH unxlngi6
Index: inc/impprn.hxx
===================================================================
RCS file: /cvs/gsl/vcl/inc/impprn.hxx,v
retrieving revision 1.4
retrieving revision 1.4.208.1
diff -u -p -u -r1.4 -r1.4.208.1
--- openoffice.org.orig/vcl/inc/impprn.hxx	13 Jan 2005 17:37:30 -0000	1.4
+++ openoffice.org/vcl/inc/impprn.hxx	11 Jul 2005 14:47:51 -0000	1.4.208.1
@@ -68,6 +68,9 @@
 #ifndef _SV_TIMER_HXX
 #include <timer.hxx>
 #endif
+#ifndef _VCL_IMPDEL_HXX
+#include <impdel.hxx>
+#endif
 
 class Queue;
 struct QueuePage;
@@ -76,7 +79,7 @@ struct QueuePage;
 // - ImplQPrinter -
 // ----------------
 
-class ImplQPrinter : public Printer
+class ImplQPrinter : public Printer, public vcl::DeletionNotifier
 {
 private:
 	Printer*	mpParent;
Index: source/gdi/impprn.cxx
===================================================================
RCS file: /cvs/gsl/vcl/source/gdi/impprn.cxx,v
retrieving revision 1.8
retrieving revision 1.8.316.1
diff -u -p -u -r1.8 -r1.8.316.1
--- openoffice.org.orig/vcl/source/gdi/impprn.cxx	8 Sep 2004 15:36:32 -0000	1.8
+++ openoffice.org/vcl/source/gdi/impprn.cxx	11 Jul 2005 14:47:52 -0000	1.8.316.1
@@ -339,13 +339,16 @@ IMPL_LINK( ImplQPrinter, ImplPrintHdl, T
 	// Druck-Job zuende?
 	QueuePage* pActPage = (QueuePage*) mpQueue->Get();
 	
+    
+    vcl::DeletionListener aDel( this );
 	if ( pActPage->mbEndJob )
 	{
 		maTimer.Stop();
 		delete pActPage;
 		if( ! EndJob() )
             mpParent->Error();
-		mpParent->ImplEndPrint();
+        if( ! aDel.isDeleted() )
+            mpParent->ImplEndPrint();
 	}
 	else
 	{
Index: source/gdi/print.cxx
===================================================================
RCS file: /cvs/gsl/vcl/source/gdi/print.cxx,v
retrieving revision 1.49
retrieving revision 1.49.6.2
diff -u -p -u -r1.49 -r1.49.6.2
--- openoffice.org.orig/vcl/source/gdi/print.cxx	6 Jul 2005 09:21:01 -0000	1.49
+++ openoffice.org/vcl/source/gdi/print.cxx	11 Jul 2005 14:47:53 -0000	1.49.6.2
@@ -1394,9 +1394,12 @@ void Printer::ImplEndPrint()
 	mbPrinting		= FALSE;
 	mnCurPrintPage	= 0;
 	maJobName.Erase();
-	mpQPrinter->Destroy();
-	mpQPrinter = NULL;
-	EndPrint();
+    if( mpQPrinter ) // not necessarily filled e.g. after AbortJob
+    {
+        mpQPrinter->Destroy();
+        mpQPrinter = NULL;
+    }
+    EndPrint();
 }
 
 // -----------------------------------------------------------------------
@@ -1526,8 +1529,9 @@ BOOL Printer::StartJob( const XubString&
 
 BOOL Printer::EndJob()
 {
+	BOOL bRet = FALSE;
 	if ( !IsJobActive() )
-		return FALSE;
+		return bRet;
 
 	DBG_ASSERT( !mbInPrintPage, "Printer::EndJob() - StartPage() without EndPage() called" );
 
@@ -1539,6 +1543,8 @@ BOOL Printer::EndJob()
 
 		mnCurPage = 0;
 
+		bRet = TRUE;
+
 		if ( mpPrinter )
 		{
 			mbPrinting		= FALSE;
@@ -1546,7 +1552,7 @@ BOOL Printer::EndJob()
 			maJobName.Erase();
 
 			mbDevOutput = FALSE;
-			mpPrinter->EndJob();
+			bRet = mpPrinter->EndJob();
 			// Hier den Drucker nicht asyncron zerstoeren, da es
 			// W95 nicht verkraftet, wenn gleichzeitig gedruckt wird
 			// und ein Druckerobjekt zerstoert wird
@@ -1556,11 +1562,9 @@ BOOL Printer::EndJob()
 		}
 		else
 			mpQPrinter->EndQueuePrint();
-
-		return TRUE;
 	}
 
-	return FALSE;
+	return bRet;
 }
 
 // -----------------------------------------------------------------------
Index: source/gdi/sallayout.cxx
===================================================================
RCS file: /cvs/gsl/vcl/source/gdi/sallayout.cxx,v
retrieving revision 1.65
retrieving revision 1.65.134.1
diff -u -p -u -r1.65 -r1.65.134.1
--- openoffice.org.orig/vcl/source/gdi/sallayout.cxx	30 Mar 2005 09:07:17 -0000	1.65
+++ openoffice.org/vcl/source/gdi/sallayout.cxx	15 Jul 2005 10:46:38 -0000	1.65.134.1
@@ -1336,11 +1336,14 @@ void GenericSalLayout::SortGlyphItems()
         // keep data of misplaced item
         GlyphItem aGI = *pGR;
         // make room for misplaced item
-        do  pGL[1] = pGL[0];
-        while( (--pGL >= mpGlyphItems) && (nXPos < pGL->maLinearPos.X()) );
+        do {
+            pGL[1] = pGL[0];
+            pGL[1].mnFlags |= GlyphItem::IS_IN_CLUSTER;
+        } while( (--pGL >= mpGlyphItems) && (nXPos < pGL->maLinearPos.X()) );
         // move misplaced item to proper slot
         pGL[1] = aGI;
         // TODO: fix glyph cluster start flags
+        pGL[1].mnFlags &= ~GlyphItem::IS_IN_CLUSTER;
     }
 }
 
Index: source/glyphs/gcach_layout.cxx
===================================================================
RCS file: /cvs/gsl/vcl/source/glyphs/gcach_layout.cxx,v
retrieving revision 1.34
retrieving revision 1.34.196.2
diff -u -p -u -r1.34 -r1.34.196.2
--- openoffice.org.orig/vcl/source/glyphs/gcach_layout.cxx	31 Jan 2005 09:18:58 -0000	1.34
+++ openoffice.org/vcl/source/glyphs/gcach_layout.cxx	18 Jul 2005 11:54:03 -0000	1.34.196.2
@@ -290,19 +290,14 @@ float IcuFontFromServerFont::getYPixelsP
 
 float IcuFontFromServerFont::getScaleFactorX() const
 {
-    const ImplFontSelectData& r = mrServerFont.GetFontSelData();
-    float fXScale = r.mnWidth ? r.mnWidth : r.mnHeight;
-    fXScale /= mrServerFont.GetEmUnits();
-    return fXScale;
+    return 1.0;
 }
 
 // -----------------------------------------------------------------------
 
 float IcuFontFromServerFont::getScaleFactorY() const
 {
-    float fYScale = mrServerFont.GetFontSelData().mnHeight;
-    fYScale /= mrServerFont.GetEmUnits();
-    return fYScale; //TODO
+    return 1.0;
 }
 
 // -----------------------------------------------------------------------
@@ -444,7 +439,14 @@ bool IcuLayoutEngine::operator()( Server
             break;
 
         // find matching script
-        le_int32 eScriptCode = uscript_getScript( pIcuChars[nMinRunPos], &rcI18n );
+        // TODO: split up bidi run into script runs
+        le_int32 eScriptCode = -1;
+        for( int i = nMinRunPos; i < nEndRunPos; ++i )
+        {
+            eScriptCode = uscript_getScript( pIcuChars[i], &rcI18n );
+            if( (eScriptCode > 0) && (eScriptCode != latnScriptCode) )
+                break;
+        }
         if( eScriptCode < 0 )   // TODO: handle errors better
             eScriptCode = latnScriptCode;
 
@@ -524,7 +526,7 @@ bool IcuLayoutEngine::operator()( Server
             // heuristic to detect group clusters using the "smoothed" char positions
             long nGlyphFlags = 0;
             if( nLastCharPos != -1 )
-                if( (nCharPos == nLastCharPos) || (nGlyphWidth == 0) )
+                if( (nCharPos == nLastCharPos) || (nGlyphWidth <= 0) )
                     nGlyphFlags = GlyphItem::IS_IN_CLUSTER;
             if( bRightToLeft )
                 nGlyphFlags |= GlyphItem::IS_RTL_GLYPH;
Index: unx/source/app/makefile.mk
===================================================================
RCS file: /cvs/gsl/vcl/unx/source/app/makefile.mk,v
retrieving revision 1.20
retrieving revision 1.20.136.1
diff -u -p -u -r1.20 -r1.20.136.1
--- openoffice.org.orig/vcl/unx/source/app/makefile.mk	18 Mar 2005 10:31:27 -0000	1.20
+++ openoffice.org/vcl/unx/source/app/makefile.mk	11 Jul 2005 10:44:01 -0000	1.20.136.1
@@ -108,14 +108,20 @@ SLOFILES+=\
 			$(SLO)$/rptpsound.obj		\
 			$(SLO)$/nassound.obj		
 
+
+
+.IF "$(ENABLE_NAS)" != ""
+CDEFS+=-DUSE_NAS
+.ENDIF
+
 .IF "$(ENABLE_PASF)" != ""
-CFLAGS+=-DUSE_PASF
+CDEFS+=-DUSE_PASF
 SLOFILES+=$(SLO)$/pasfsound.obj
 .IF "$(SYSTEM_SNDFILE)" == "YES"
-CFLAGS+=-DSYSTEM_SNDFILE
+CDEFS+=-DSYSTEM_SNDFILE
 .ENDIF
 .IF "$(SYSTEM_PORTAUDIO)" == "YES"
-CFLAGS+=-DSYSTEM_PORTAUDIO
+CDEFS+=-DSYSTEM_PORTAUDIO
 .ENDIF
 .ENDIF
 
Index: unx/source/app/vsound.hxx
===================================================================
RCS file: /cvs/gsl/vcl/unx/source/app/vsound.hxx,v
retrieving revision 1.8
retrieving revision 1.8.256.1
diff -u -p -u -r1.8 -r1.8.256.1
--- openoffice.org.orig/vcl/unx/source/app/vsound.hxx	9 Nov 2004 16:49:10 -0000	1.8
+++ openoffice.org/vcl/unx/source/app/vsound.hxx	11 Jul 2005 10:44:09 -0000	1.8.256.1
@@ -69,10 +69,6 @@
 #define USE_DEVAUDIO
 #endif
 
-#if defined (LINUX) || defined(FREEBSD) || defined (SOLARIS)
-#define USE_NAS
-#endif
-
 #if STLPORT_VERSION>=321
 #include <cstdarg>
 #endif
Index: util/makefile.mk
===================================================================
RCS file: /cvs/gsl/vcl/util/makefile.mk,v
retrieving revision 1.70
retrieving revision 1.69.42.4
diff -u -p -u -r1.70 -r1.69.42.4
--- openoffice.org.orig/vcl/util/makefile.mk	15 Jul 2005 09:36:04 -0000	1.70
+++ openoffice.org/vcl/util/makefile.mk	19 Jul 2005 15:06:52 -0000	1.69.42.4
@@ -325,13 +325,13 @@ SHL2STDLIBS += -framework CoreAudio -fra
 SHL2STDLIBS += -lsndfile -lportaudio
 .ENDIF # ENABLE_PASF
 
-.IF "$(OS)"=="LINUX" || "$(OS)"=="SOLARIS" || "$(OS)"=="FREEBSD"
+.IF "$(ENABLE_NAS)" != ""
 SHL2STDLIBS += -laudio
 .IF "$(OS)"=="SOLARIS"
 # needed by libaudio.a
 SHL2STDLIBS += -ldl -lnsl -lsocket
 .ENDIF # SOLARIS
-.ENDIF # "$(OS)"=="LINUX" || "$(OS)"=="SOLARIS" || "$(OS)"=="FREEBSD"
+.ENDIF
 
 .IF "$(GUIBASE)"=="unx"
 
@@ -340,6 +340,10 @@ SHL2STDLIBS+=$(LIBSN_LIBS)
 .ENDIF
 
 SHL2STDLIBS += -lXext -lSM -lICE -lX11
+.IF "$(OS)"!="MACOSX" && "$(OS)"!="FREEBSD"
+# needed by salprnpsp.cxx
+SHL2STDLIBS+= -ldl
+.ENDIF
 
 .ENDIF          # "$(GUIBASE)"=="unx"
 
@@ -408,6 +412,7 @@ LIB5FILES=$(SLB)$/kdeplug.lib
 SHL5TARGET=vclplug_kde$(UPD)$(DLLPOSTFIX)
 SHL5IMPLIB=ikde_plug_
 SHL5LIBS=$(LIB5TARGET)
+SHL5DEPN=$(SHL2TARGETN)
 # libs for KDE plugin
 SHL5STDLIBS=$(KDE_LIBS)
 SHL5STDLIBS+=-l$(SHL2TARGET)


Index: openoffice.org.spec
===================================================================
RCS file: /cvs/dist/rpms/openoffice.org/devel/openoffice.org.spec,v
retrieving revision 1.357
retrieving revision 1.358
diff -u -r1.357 -r1.358
--- openoffice.org.spec	25 Jul 2005 19:52:24 -0000	1.357
+++ openoffice.org.spec	26 Jul 2005 11:55:13 -0000	1.358
@@ -134,35 +134,32 @@
 Patch31: openoffice.org-1.9.108.ooo30133.lingucomponent.ukrainean.patch
 Patch32: openoffice.org-1.9.108.ooo48814.solenv.nostripwithsimpleinstall.patch
 Patch33: openoffice.org-1.9.108.ooo47323.binfilter.stupiddetect.patch
-Patch34: workspace.gslpatches2.patch
-Patch35: workspace.fpicandrpath.patch
-Patch36: openoffice.org-1.9.88.NONE.gcc3gcj4.patch
-Patch37: openoffice.org-1.9.108.ooo9290.goodies.epstoepdf.patch
-Patch38: openoffice.org-1.9.112.ooo51724.testtools.patch
-Patch39: openoffice.org-1.9.112.ooo50875.gtkslowunderkde.vcl.patch
-Patch40: openoffice.org-1.9.114.ooo51718.rpath.patch
-Patch41: openoffice.org-1.9.114.rh161886.rpath.desktop.patch
-Patch42: openoffice.org-1.9.114.ooo51637.solenv.pyuno.patch
-Patch43: openoffice.org-1.9.114.ooo51638.mailmerge.patch
-Patch44: openoffice.org-1.9.114.oooXXXXX.nostlport.patch
-Patch45: openoffice.org-1.9.115.ooo51673.printing.checkerror.patch
-Patch46: openoffice.org-1.9.115.ooo51735.audio.withoutnas.patch
-Patch47: openoffice.org-1.9.115.ooo51736.xsltproc.evenwithjava.patch
-Patch48: openoffice.org-1.9.115.ooo51931.systemxmlsec.patch
-Patch49: openoffice.org-1.9.115.ooo51745.cpputools.patch
-Patch50: openoffice.org-1.9.115.ooo51755.scp2.parallel.patch
-Patch51: openoffice.org-1.9.116.ooo51774.rsc.parallel.patch
-Patch52: openoffice.org-1.9.116.oooXXXXX.extensions.evolution.patch
-Patch53: openoffice.org-1.9.117.rh163147.thorndale.fontconfig.patch
-Patch54: openoffice.org-1.9.117.ooo51912.nullpointer.wizards.patch
-Patch55: openoffice.org-1.9.117.ooo52023.evoadb2.nognuconst.patch
-Patch56: openoffice.org-1.9.117.ooo52048.inhalt.sw.patch
-Patch57: openoffice.org-1.9.117.rh150643.fontconfigalwayssystemfont.vcl.patch
-Patch58: openoffice.org-1.9.117.oooXXXXX.mozillanspr.extensions.patch
-Patch59: openoffice.org-1.9.118.forwarddecl.psprint.patch
-Patch60: openoffice.org-1.9.118.rhXXXXX.envcflags.solenv.patch
-Patch61: openoffice.org-1.9.120.rh158977.execshield.bridges.patch
-Patch62: openoffice.org-1.9.121.rh127576.gnomeprintui.patch
+Patch34: workspace.fpicandrpath.patch
+Patch35: openoffice.org-1.9.88.NONE.gcc3gcj4.patch
+Patch36: openoffice.org-1.9.108.ooo9290.goodies.epstoepdf.patch
+Patch37: openoffice.org-1.9.112.ooo51724.testtools.patch
+Patch38: openoffice.org-1.9.112.ooo50875.gtkslowunderkde.vcl.patch
+Patch39: openoffice.org-1.9.114.ooo51718.rpath.patch
+Patch40: openoffice.org-1.9.114.rh161886.rpath.desktop.patch
+Patch41: openoffice.org-1.9.114.ooo51637.solenv.pyuno.patch
+Patch42: openoffice.org-1.9.114.ooo51638.mailmerge.patch
+Patch43: openoffice.org-1.9.114.oooXXXXX.nostlport.patch
+Patch44: workspace.gslpatches4.patch
+Patch45: openoffice.org-1.9.115.ooo51736.xsltproc.evenwithjava.patch
+Patch46: openoffice.org-1.9.115.ooo51931.systemxmlsec.patch
+Patch47: openoffice.org-1.9.115.ooo51745.cpputools.patch
+Patch48: openoffice.org-1.9.115.ooo51755.scp2.parallel.patch
+Patch49: openoffice.org-1.9.116.ooo51774.rsc.parallel.patch
+Patch50: openoffice.org-1.9.116.oooXXXXX.extensions.evolution.patch
+Patch51: openoffice.org-1.9.117.rh163147.thorndale.fontconfig.patch
+Patch52: openoffice.org-1.9.117.ooo51912.nullpointer.wizards.patch
+Patch53: openoffice.org-1.9.117.ooo52023.evoadb2.nognuconst.patch
+Patch54: openoffice.org-1.9.117.ooo52048.inhalt.sw.patch
+Patch55: openoffice.org-1.9.117.rh150643.fontconfigalwayssystemfont.vcl.patch
+Patch56: openoffice.org-1.9.117.ooo49720.mozillanspr.extensions.patch
+Patch57: workspace.cmcfixes12
+Patch58: openoffice.org-1.9.120.ooo52428.execshield.bridges.patch
+Patch59: openoffice.org-1.9.121.rh127576.gnomeprintui.patch
 
 %define instdir %{_libdir}/openoffice.org2.0
 
@@ -785,40 +782,37 @@
 %patch31 -p1 -b .ooo30133.lingucomponent.ukrainean.patch
 %patch32 -p1 -b .ooo48814.solenv.nostripwithsimpleinstall.patch
 %patch33 -p1 -b .ooo47323.binfilter.stupiddetect.patch
-%patch34 -p1 -b .workspace.gslpatches2.patch
-%patch35 -p1 -b .workspace.fpicandrpath.patch
-%patch36 -p1 -b .NONE.gcc3gcj4.patch
-%patch37 -p1 -b .ooo9290.goodies.epstoepdf.patch
-%patch38 -p1 -b .ooo51724.testtools.patch
-%patch39 -p1 -b .ooo50875.gtkslowunderkde.vcl.patch
-%patch40 -p1 -b .ooo51718.rpath.patch
-%patch41 -p1 -b .rh161886.rpath.desktop.patch
-%patch42 -p1 -b .ooo51637.solenv.pyuno.patch
+%patch34 -p1 -b .workspace.fpicandrpath.patch
+%patch35 -p1 -b .NONE.gcc3gcj4.patch
+%patch36 -p1 -b .ooo9290.goodies.epstoepdf.patch
+%patch37 -p1 -b .ooo51724.testtools.patch
+%patch38 -p1 -b .ooo50875.gtkslowunderkde.vcl.patch
+%patch39 -p1 -b .ooo51718.rpath.patch
+%patch40 -p1 -b .rh161886.rpath.desktop.patch
+%patch41 -p1 -b .ooo51637.solenv.pyuno.patch
 %if %{includeemailmerge}
-%patch43 -p1 -b .ooo51638.mailmerge.patch
+%patch42 -p1 -b .ooo51638.mailmerge.patch
 %endif
-%patch44 -p1 -b .oooXXXXX.nostlport.patch
-%patch45 -p1 -b .ooo51673.printing.checkerror.patch
-%patch46 -p1 -b .ooo51735.audio.withoutnas.patch
-%patch47 -p1 -b .ooo51736.xsltproc.evenwithjava.patch
-%patch48 -p1 -b .ooo51931.systemxmlsec.patch
-%patch49 -p1 -b .ooo51745.cpputools.patch
-%patch50 -p1 -b .ooo51755.scp2.parallel.patch
-%patch51 -p1 -b .ooo51774.rsc.parallel.patch
-%patch52 -p1 -b .oooXXXXX.extensions.evolution.patch
-%patch53 -p1 -b .rh163147.thorndale.fontconfig.patch
-%patch54 -p1 -b .ooo51912.nullpointer.wizards.patch
-%patch55 -p1 -b .ooo52023.evoadb2.nognuconst.patch
-%patch56 -p1 -b .ooo52048.inhalt.sw.patch
+%patch43 -p1 -b .oooXXXXX.nostlport.patch
+%patch44 -p1 -b .workspace.gslpatches4.patch
+%patch45 -p1 -b .ooo51736.xsltproc.evenwithjava.patch
+%patch46 -p1 -b .ooo51931.systemxmlsec.patch
+%patch47 -p1 -b .ooo51745.cpputools.patch
+%patch48 -p1 -b .ooo51755.scp2.parallel.patch
+%patch49 -p1 -b .ooo51774.rsc.parallel.patch
+%patch50 -p1 -b .oooXXXXX.extensions.evolution.patch
+%patch51 -p1 -b .rh163147.thorndale.fontconfig.patch
+%patch52 -p1 -b .ooo51912.nullpointer.wizards.patch
+%patch53 -p1 -b .ooo52023.evoadb2.nognuconst.patch
+%patch54 -p1 -b .ooo52048.inhalt.sw.patch
 %if %{build_fc5}
-%patch57 -p1 -b .rh150643.fontconfigalwayssystemfont.vcl.patch
+%patch55 -p1 -b .rh150643.fontconfigalwayssystemfont.vcl.patch
 %endif
-%patch58 -p1 -b .oooXXXXX.mozillanspr.extensions.patch
-%patch59 -p1 -b .forwarddecl.psprint.patch
-# %patch60 -p1 -b .rhXXXXX.envcflags.solenv.patch
-%patch61 -p1 -b .rh158977.execshield.bridges.patch
+%patch56 -p1 -b .ooo49720.mozillanspr.extensions.patch
+%patch57 -p1 -b .workspace.cmcfixes12
+%patch58 -p1 -b .ooo52428.execshield.bridges.patch
 %if %{build_fc5}
-%patch62 -p1 -b .rh127576.gnomeprintui.patch
+%patch59 -p1 -b .rh127576.gnomeprintui.patch
 %endif
 
 %if %{includeexternals}
@@ -898,7 +892,7 @@
 export JAVACOMPILER=`pwd`/solenv/bin/gcj
 
 #give these security flags a whirl
-#export CFLAGS="-Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param ssp-buffer-size=3 -fasynchronous-unwind-tables"
+#export ARCH_FLAGS="-Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param ssp-buffer-size=3 -fasynchronous-unwind-tables"
 
 # see tamil translation issue rh#159381#, remove when complete and upstreamed
 cd transex3/prj
@@ -3042,6 +3036,7 @@
 * Mon Jul 25 2005 Caolan McNamara <caolanm redhat com> - 1:1.9.121-2
 - rh#127576# add libgnomeprintui 
 - make database front end into pseudo subpackage
+- replace patches with combined workspace.gslpatches4
 
 * Mon Jul 25 2005 Caolan McNamara <caolanm redhat com> - 1:1.9.121-1
 - next version


--- openoffice.org-1.9.115.ooo51673.printing.checkerror.patch DELETED ---


--- openoffice.org-1.9.115.ooo51735.audio.withoutnas.patch DELETED ---


--- openoffice.org-1.9.117.oooXXXXX.mozillanspr.extensions.patch DELETED ---


--- openoffice.org-1.9.118.forwarddecl.psprint.patch DELETED ---


--- openoffice.org-1.9.118.rhXXXXX.envcflags.solenv.patch DELETED ---


--- openoffice.org-1.9.120.rh158977.execshield.bridges.patch DELETED ---


--- workspace.gslpatches2.patch DELETED ---


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]