[ooo-build-commit] .: Branch 'ooo-build-3-2-1' - patches/dev300

Petr Mladek pmladek at kemper.freedesktop.org
Thu Jun 3 11:46:53 PDT 2010


 patches/dev300/apply                         |    2 ++
 patches/dev300/backport-ftruncate-check.diff |   27 +++++++++++++++++++++++++++
 2 files changed, 29 insertions(+)

New commits:
commit ee2eb0fda0c3a0d59da260e3839e5a55cfb664ef
Author: Petr Mladek <pmladek at suse.cz>
Date:   Thu Jun 3 20:27:30 2010 +0200

    allow to start OOo on cifs; patch by Caolan (i#108106)
    
    * patches/dev300/backport-ftruncate-check.diff:
    * patches/dev300/apply: check if the file was successfully truncated (i#108106)

diff --git a/patches/dev300/apply b/patches/dev300/apply
index 6ba77b8..d9a7e7b 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -2843,6 +2843,8 @@ icu-arm.diff, doko
 [ Fixes ]
 svx-sdrobjeditview-update-edit-area.diff, n#305205, n#347355, rodo
 goodies-eps-filter-unix.diff, n#200053, rodo
+# allow to start OOo on cifs; do not truncate the files there
+backport-ftruncate-check.diff, i#108106, cmc
 
 [ EMFPlus ]
 SectionOwner => rodo
diff --git a/patches/dev300/backport-ftruncate-check.diff b/patches/dev300/backport-ftruncate-check.diff
new file mode 100644
index 0000000..ceb2d5c
--- /dev/null
+++ b/patches/dev300/backport-ftruncate-check.diff
@@ -0,0 +1,27 @@
+diff -r 28ba3ecf6c22 -r db44de918518 bridges/source/cpp_uno/shared/vtablefactory.cxx
+--- bridges/source/cpp_uno/shared/vtablefactory.cxx	Mon Oct 12 09:26:03 2009 +0000
++++ bridges/source/cpp_uno/shared/vtablefactory.cxx	Mon Oct 12 13:29:25 2009 +0000
+@@ -272,7 +272,7 @@
+         char *tmpfname = new char[aTmpName.getLength()+1];
+         strncpy(tmpfname, aTmpName.getStr(), aTmpName.getLength()+1);
+         if ((block.fd = mkstemp(tmpfname)) == -1)
+-          perror("creation of executable memory area failed");
++            perror("creation of executable memory area failed");
+         if (block.fd == -1)
+         {
+             delete[] tmpfname;
+@@ -280,7 +280,13 @@
+         }
+         unlink(tmpfname);
+         delete[] tmpfname;
+-        ftruncate(block.fd, block.size);
++        if (ftruncate(block.fd, block.size) == -1)
++        {
++            perror("truncation of executable memory area failed");
++            close(block.fd);
++            block.fd = -1;
++            break;
++        }
+         block.start = mmap(NULL, block.size, PROT_READ | PROT_WRITE, MAP_SHARED, block.fd, 0);
+         if (block.start== MAP_FAILED) {
+             block.start = 0;


More information about the ooo-build-commit mailing list