libgsf r988 - in trunk: . gsf
- From: jody svn gnome org
- To: svn-commits-list gnome org
- Subject: libgsf r988 - in trunk: . gsf
- Date: Tue, 1 Jul 2008 01:01:18 +0000 (UTC)
Author: jody
Date: Tue Jul 1 01:01:18 2008
New Revision: 988
URL: http://svn.gnome.org/viewvc/libgsf?rev=988&view=rev
Log:
* gsf/gsf-infile-msole.c (ole_make_bat) : be more forgiving of
failure. We do not need to abort completely on a cycle, just
truncate.
Modified:
trunk/ChangeLog
trunk/NEWS
trunk/gsf/gsf-infile-msole.c
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Tue Jul 1 01:01:18 2008
@@ -19,6 +19,7 @@
* Add missing ODF presentation namespace.
* Only install win32 header for win32. [#459771]
* Fix XML enum export utils.
+ * Be more forgiving of corrupt ole2.
Morten:
* Fix criticals for corrupted file. [#485964]
Modified: trunk/gsf/gsf-infile-msole.c
==============================================================================
--- trunk/gsf/gsf-infile-msole.c (original)
+++ trunk/gsf/gsf-infile-msole.c Tue Jul 1 01:01:18 2008
@@ -140,7 +140,7 @@
* table for the list starting in @block.
*
* Returns: TRUE on error.
- */
+ **/
static gboolean
ole_make_bat (MSOleBAT const *metabat, size_t size_guess, guint32 block,
MSOleBAT *res)
@@ -155,7 +155,8 @@
if (block < metabat->num_blocks)
do {
/* Catch cycles in the bat list */
- g_return_val_if_fail (0 == (used[block/8] & (1 << (block & 0x7))), TRUE);
+ if (used[block/8] & (1 << (block & 0x7)))
+ break;
used[block/8] |= 1 << (block & 0x7);
g_array_append_val (bat, block);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]