diff options
Diffstat (limited to 'testing/spacefm/fix-malloc_trim.patch')
| -rw-r--r-- | testing/spacefm/fix-malloc_trim.patch | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/testing/spacefm/fix-malloc_trim.patch b/testing/spacefm/fix-malloc_trim.patch new file mode 100644 index 0000000000..85a3b66930 --- /dev/null +++ b/testing/spacefm/fix-malloc_trim.patch @@ -0,0 +1,84 @@ +diff -urp spacefm-1.0.3/src/main-window.c spacefm-1.0.3.new/src/main-window.c +--- spacefm-1.0.3/src/main-window.c 2015-08-26 14:24:08.000000000 +0000 ++++ spacefm-1.0.3.new/src/main-window.c 2015-08-28 17:11:43.091757948 +0000 +@@ -1216,7 +1216,9 @@ void main_window_toggle_thumbnails_all_w + /* Ensuring free space at the end of the heap is freed to the OS, + * mainly to deal with the possibility thousands of large thumbnails + * have been freed but the memory not actually released by SpaceFM */ +- malloc_trim(0); ++ #if defined (__GLIBC__) ++ malloc_trim(0); ++ #endif + } + + void focus_panel( GtkMenuItem* item, gpointer mw, int p ) +diff -urp spacefm-1.0.3/src/ptk/ptk-file-browser.c spacefm-1.0.3.new/src/ptk/ptk-file-browser.c +--- spacefm-1.0.3/src/ptk/ptk-file-browser.c 2015-08-26 14:24:08.000000000 +0000 ++++ spacefm-1.0.3.new/src/ptk/ptk-file-browser.c 2015-08-28 17:16:58.495770877 +0000 +@@ -1513,7 +1513,9 @@ void ptk_file_browser_finalize( GObject + * mainly to deal with the possibility that killing the browser results in + * thousands of large thumbnails being freed, but the memory not actually + * released by SpaceFM */ +- malloc_trim(0); ++ #if defined (__GLIBC__) ++ malloc_trim(0); ++ #endif + } + + void ptk_file_browser_get_property ( GObject *obj, +@@ -2703,11 +2705,13 @@ void on_dir_file_listed( VFSDir* dir, + ptk_file_browser_update_model( file_browser ); + file_browser->busy = FALSE; + +- /* Ensuring free space at the end of the heap is freed to the OS, +- * mainly to deal with the possibility that changing the directory results in +- * thousands of large thumbnails being freed, but the memory not actually +- * released by SpaceFM */ +- malloc_trim(0); ++ /* Ensuring free space at the end of the heap is freed to the OS, ++ * mainly to deal with the possibility that changing the directory results in ++ * thousands of large thumbnails being freed, but the memory not actually ++ * released by SpaceFM */ ++ #if defined (__GLIBC__) ++ malloc_trim(0); ++ #endif + + g_signal_emit( file_browser, signals[ AFTER_CHDIR_SIGNAL ], 0 ); + //g_signal_emit( file_browser, signals[ CONTENT_CHANGE_SIGNAL ], 0 ); +@@ -4556,7 +4560,9 @@ void ptk_file_browser_refresh( GtkWidget + /* Ensuring free space at the end of the heap is freed to the OS, + * mainly to deal with the possibility thousands of large thumbnails + * have been freed but the memory not actually released by SpaceFM */ +- malloc_trim(0); ++ #if defined (__GLIBC__) ++ malloc_trim(0); ++ #endif + + // begin load dir + file_browser->busy = TRUE; +diff -urp spacefm-1.0.3/src/vfs/vfs-dir.c spacefm-1.0.3.new/src/vfs/vfs-dir.c +--- spacefm-1.0.3/src/vfs/vfs-dir.c 2015-08-26 14:24:08.000000000 +0000 ++++ spacefm-1.0.3.new/src/vfs/vfs-dir.c 2015-08-28 17:10:12.543754236 +0000 +@@ -21,7 +21,11 @@ + #include <string.h> + + #include <fcntl.h> /* for open() */ ++ ++#if defined (__GLIBC__) + #include <malloc.h> /* for malloc_trim */ ++#endif ++ + #include <unistd.h> /* for read */ + #include "vfs-volume.h" + +@@ -1193,7 +1197,9 @@ void vfs_dir_unload_thumbnails( VFSDir* + /* Ensuring free space at the end of the heap is freed to the OS, + * mainly to deal with the possibility thousands of large thumbnails + * have been freed but the memory not actually released by SpaceFM */ +- malloc_trim(0); ++ #if defined (__GLIBC__) ++ malloc_trim(0); ++ #endif + } + + //sfm added mime change timer |
