[Xfce4-commits] r25442 - in squeeze/trunk: . libsqueeze
Peter de Ridder
peter at xfce.org
Sun Apr 8 14:54:57 CEST 2007
Author: peter
Date: 2007-04-08 12:54:57 +0000 (Sun, 08 Apr 2007)
New Revision: 25442
Modified:
squeeze/trunk/TODO
squeeze/trunk/libsqueeze/archive-iter.c
Log:
roadmap updated
invalid read in archive free fixed
Modified: squeeze/trunk/TODO
===================================================================
--- squeeze/trunk/TODO 2007-04-08 12:49:41 UTC (rev 25441)
+++ squeeze/trunk/TODO 2007-04-08 12:54:57 UTC (rev 25442)
@@ -13,10 +13,12 @@
Settings dialog
Bug fixes
More support objects
- Improve custom action system
+ Review libsqueeze
0.3:
- Review libsqueeze
Make support objects plugins
+ Custom archive action
+ Password support
+ Improve the user interface
---------------------------------------------------------------
Modified: squeeze/trunk/libsqueeze/archive-iter.c
===================================================================
--- squeeze/trunk/libsqueeze/archive-iter.c 2007-04-08 12:49:41 UTC (rev 25441)
+++ squeeze/trunk/libsqueeze/archive-iter.c 2007-04-08 12:54:57 UTC (rev 25442)
@@ -135,7 +135,6 @@
* LSQArchiveIterPool stuff *
****************************/
-#ifdef DEBUG
void lsq_archive_iter_pool_print()
{
guint i;
@@ -146,8 +145,13 @@
else
printf("%d %d %p %s\t(no parent)\n", i, pool->pool[i]->ref_count, pool->pool[i]->entry, pool->pool[i]->entry?pool->pool[i]->entry->filename:"(no entry)");
}
+#ifdef USE_LSQITER_SLICES
+ for(; i < pool->reserved; ++i)
+ {
+ printf("%d %p\n", i, pool->pool[i]);
+ }
+#endif
}
-#endif
inline static void
lsq_archive_iter_pool_free(LSQArchiveIterPool *pool)
@@ -172,6 +176,20 @@
g_free(pool->pool[i]);
#endif
}
+#ifdef USE_LSQITER_SLICES
+ for(; i < pool->reserved; ++i)
+ {
+ /* Cleaning up the whole pool */
+ /* Now we can free the iters */
+ if(!pool->pool[i])
+ break;
+#ifdef USE_GSLICES
+ g_slice_free(LSQArchiveIter, pool->pool[i]);
+#else
+ g_free(pool->pool[i]);
+#endif
+ }
+#endif
g_free(pool->pool);
g_free(pool);
}
@@ -514,8 +532,7 @@
back_iter = g_slist_next(back_iter);
if(!back_iter)
break;
- if(!lsq_archive_entry_get_child(parent->entry,
- lsq_archive_entry_get_filename(((LSQArchiveIter*)back_iter->data)->entry)))
+ if(!lsq_archive_entry_get_filename(((LSQArchiveIter*)back_iter->data)->entry) || !lsq_archive_entry_get_child(parent->entry, lsq_archive_entry_get_filename(((LSQArchiveIter*)back_iter->data)->entry)))
{
g_slist_free(back_stack);
return FALSE;
More information about the Xfce4-commits
mailing list