|
View:
New views
5 Messages
—
Rating Filter:
Alert me
|
|
|
[PATCH] add -l option to gvfs-mount + crash reportHi,
This patch adds the -l (list mounts) option to gvfs-mount. it also demonstrates a weird SIGSEGV when gvfsd is not running (attached is the valgrind output). Cheers, Norbert valgrind gvfs-mount -l ==13659== Memcheck, a memory error detector. ==13659== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al. ==13659== Using LibVEX rev 1732, a library for dynamic binary translation. ==13659== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP. ==13659== Using valgrind-3.2.3-Debian, a dynamic binary instrumentation framework. ==13659== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al. ==13659== For more details, rerun with: -v ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014A53: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0B50: dlopen (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED588: g_module_open (gmodule-dl.c:99) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== by 0x407D088: g_io_modules_load_all_in_directory (giomodule.c:219) ==13659== by 0x407D1B7: _g_io_modules_ensure_loaded (giomodule.c:260) ==13659== Address 0x43BCC20 is 64 bytes inside a block of size 65 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x41338F5: g_malloc (gmem.c:131) ==13659== by 0x414C478: g_strdup (gstrfuncs.c:92) ==13659== by 0x40ED920: g_module_open (gmodule.c:386) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== by 0x407D088: g_io_modules_load_all_in_directory (giomodule.c:219) ==13659== by 0x407D1B7: _g_io_modules_ensure_loaded (giomodule.c:260) ==13659== by 0x4085DE8: get_default_native_class (gunionvolumemonitor.c:447) ==13659== by 0x41526C2: g_once_impl (gthread.c:190) ==13659== by 0x4085C72: get_native_class (gunionvolumemonitor.c:493) ==13659== by 0x4087068: g_union_volume_monitor_init (gunionvolumemonitor.c:511) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014A53: (within /lib/ld-2.6.1.so) ==13659== by 0x4007949: (within /lib/ld-2.6.1.so) ==13659== by 0x4010F83: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0B50: dlopen (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED588: g_module_open (gmodule-dl.c:99) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== Address 0x43BCC20 is 64 bytes inside a block of size 65 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x41338F5: g_malloc (gmem.c:131) ==13659== by 0x414C478: g_strdup (gstrfuncs.c:92) ==13659== by 0x40ED920: g_module_open (gmodule.c:386) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== by 0x407D088: g_io_modules_load_all_in_directory (giomodule.c:219) ==13659== by 0x407D1B7: _g_io_modules_ensure_loaded (giomodule.c:260) ==13659== by 0x4085DE8: get_default_native_class (gunionvolumemonitor.c:447) ==13659== by 0x41526C2: g_once_impl (gthread.c:190) ==13659== by 0x4085C72: get_native_class (gunionvolumemonitor.c:493) ==13659== by 0x4087068: g_union_volume_monitor_init (gunionvolumemonitor.c:511) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014BF3: (within /lib/ld-2.6.1.so) ==13659== by 0x4007949: (within /lib/ld-2.6.1.so) ==13659== by 0x4010F83: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0B50: dlopen (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED588: g_module_open (gmodule-dl.c:99) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== Address 0x43BCC20 is 64 bytes inside a block of size 65 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x41338F5: g_malloc (gmem.c:131) ==13659== by 0x414C478: g_strdup (gstrfuncs.c:92) ==13659== by 0x40ED920: g_module_open (gmodule.c:386) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== by 0x407D088: g_io_modules_load_all_in_directory (giomodule.c:219) ==13659== by 0x407D1B7: _g_io_modules_ensure_loaded (giomodule.c:260) ==13659== by 0x4085DE8: get_default_native_class (gunionvolumemonitor.c:447) ==13659== by 0x41526C2: g_once_impl (gthread.c:190) ==13659== by 0x4085C72: get_native_class (gunionvolumemonitor.c:493) ==13659== by 0x4087068: g_union_volume_monitor_init (gunionvolumemonitor.c:511) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014BF3: (within /lib/ld-2.6.1.so) ==13659== by 0x4005BE9: (within /lib/ld-2.6.1.so) ==13659== by 0x4007A07: (within /lib/ld-2.6.1.so) ==13659== by 0x4010F83: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0B50: dlopen (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED588: g_module_open (gmodule-dl.c:99) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== Address 0x43BCC20 is 64 bytes inside a block of size 65 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x41338F5: g_malloc (gmem.c:131) ==13659== by 0x414C478: g_strdup (gstrfuncs.c:92) ==13659== by 0x40ED920: g_module_open (gmodule.c:386) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== by 0x407D088: g_io_modules_load_all_in_directory (giomodule.c:219) ==13659== by 0x407D1B7: _g_io_modules_ensure_loaded (giomodule.c:260) ==13659== by 0x4085DE8: get_default_native_class (gunionvolumemonitor.c:447) ==13659== by 0x41526C2: g_once_impl (gthread.c:190) ==13659== by 0x4085C72: get_native_class (gunionvolumemonitor.c:493) ==13659== by 0x4087068: g_union_volume_monitor_init (gunionvolumemonitor.c:511) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014C09: (within /lib/ld-2.6.1.so) ==13659== by 0x400710D: (within /lib/ld-2.6.1.so) ==13659== by 0x400767F: (within /lib/ld-2.6.1.so) ==13659== by 0x4007D5E: (within /lib/ld-2.6.1.so) ==13659== by 0x400B806: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x400B9E6: (within /lib/ld-2.6.1.so) ==13659== by 0x4010FE3: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== Address 0x43BCD6C is 36 bytes inside a block of size 38 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x4006F54: (within /lib/ld-2.6.1.so) ==13659== by 0x4007099: (within /lib/ld-2.6.1.so) ==13659== by 0x400767F: (within /lib/ld-2.6.1.so) ==13659== by 0x4007D5E: (within /lib/ld-2.6.1.so) ==13659== by 0x400B806: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x400B9E6: (within /lib/ld-2.6.1.so) ==13659== by 0x4010FE3: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014BF3: (within /lib/ld-2.6.1.so) ==13659== by 0x400D319: (within /lib/ld-2.6.1.so) ==13659== by 0x4009826: (within /lib/ld-2.6.1.so) ==13659== by 0x42E8464: (within /lib/tls/i686/cmov/libc-2.6.1.so) ==13659== by 0x42E87F9: _dl_sym (in /lib/tls/i686/cmov/libc-2.6.1.so) ==13659== by 0x40F0DE7: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0D72: dlsym (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED163: g_module_symbol (gmodule-dl.c:147) ==13659== by 0x40ED671: g_module_open (gmodule.c:484) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== Address 0x43BCC98 is 64 bytes inside a block of size 65 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x4006F54: (within /lib/ld-2.6.1.so) ==13659== by 0x4007949: (within /lib/ld-2.6.1.so) ==13659== by 0x4010F83: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0B50: dlopen (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED588: g_module_open (gmodule-dl.c:99) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014AF7: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0B50: dlopen (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED588: g_module_open (gmodule-dl.c:99) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== by 0x407D088: g_io_modules_load_all_in_directory (giomodule.c:219) ==13659== by 0x407D1B7: _g_io_modules_ensure_loaded (giomodule.c:260) ==13659== Address 0x43BF194 is 76 bytes inside a block of size 78 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x41338F5: g_malloc (gmem.c:131) ==13659== by 0x414C478: g_strdup (gstrfuncs.c:92) ==13659== by 0x40ED920: g_module_open (gmodule.c:386) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== by 0x407D088: g_io_modules_load_all_in_directory (giomodule.c:219) ==13659== by 0x407D1B7: _g_io_modules_ensure_loaded (giomodule.c:260) ==13659== by 0x4085DE8: get_default_native_class (gunionvolumemonitor.c:447) ==13659== by 0x41526C2: g_once_impl (gthread.c:190) ==13659== by 0x4085C72: get_native_class (gunionvolumemonitor.c:493) ==13659== by 0x4087068: g_union_volume_monitor_init (gunionvolumemonitor.c:511) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014AF7: (within /lib/ld-2.6.1.so) ==13659== by 0x4007949: (within /lib/ld-2.6.1.so) ==13659== by 0x4010F83: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0B50: dlopen (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED588: g_module_open (gmodule-dl.c:99) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== Address 0x43BF194 is 76 bytes inside a block of size 78 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x41338F5: g_malloc (gmem.c:131) ==13659== by 0x414C478: g_strdup (gstrfuncs.c:92) ==13659== by 0x40ED920: g_module_open (gmodule.c:386) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== by 0x407D088: g_io_modules_load_all_in_directory (giomodule.c:219) ==13659== by 0x407D1B7: _g_io_modules_ensure_loaded (giomodule.c:260) ==13659== by 0x4085DE8: get_default_native_class (gunionvolumemonitor.c:447) ==13659== by 0x41526C2: g_once_impl (gthread.c:190) ==13659== by 0x4085C72: get_native_class (gunionvolumemonitor.c:493) ==13659== by 0x4087068: g_union_volume_monitor_init (gunionvolumemonitor.c:511) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014C37: (within /lib/ld-2.6.1.so) ==13659== by 0x4007949: (within /lib/ld-2.6.1.so) ==13659== by 0x4010F83: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0B50: dlopen (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED588: g_module_open (gmodule-dl.c:99) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== Address 0x43BF194 is 76 bytes inside a block of size 78 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x41338F5: g_malloc (gmem.c:131) ==13659== by 0x414C478: g_strdup (gstrfuncs.c:92) ==13659== by 0x40ED920: g_module_open (gmodule.c:386) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== by 0x407D088: g_io_modules_load_all_in_directory (giomodule.c:219) ==13659== by 0x407D1B7: _g_io_modules_ensure_loaded (giomodule.c:260) ==13659== by 0x4085DE8: get_default_native_class (gunionvolumemonitor.c:447) ==13659== by 0x41526C2: g_once_impl (gthread.c:190) ==13659== by 0x4085C72: get_native_class (gunionvolumemonitor.c:493) ==13659== by 0x4087068: g_union_volume_monitor_init (gunionvolumemonitor.c:511) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014C37: (within /lib/ld-2.6.1.so) ==13659== by 0x4005BE9: (within /lib/ld-2.6.1.so) ==13659== by 0x4007A07: (within /lib/ld-2.6.1.so) ==13659== by 0x4010F83: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0B50: dlopen (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED588: g_module_open (gmodule-dl.c:99) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== Address 0x43BF194 is 76 bytes inside a block of size 78 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x41338F5: g_malloc (gmem.c:131) ==13659== by 0x414C478: g_strdup (gstrfuncs.c:92) ==13659== by 0x40ED920: g_module_open (gmodule.c:386) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== by 0x40DD557: g_type_module_use (gtypemodule.c:190) ==13659== by 0x407D088: g_io_modules_load_all_in_directory (giomodule.c:219) ==13659== by 0x407D1B7: _g_io_modules_ensure_loaded (giomodule.c:260) ==13659== by 0x4085DE8: get_default_native_class (gunionvolumemonitor.c:447) ==13659== by 0x41526C2: g_once_impl (gthread.c:190) ==13659== by 0x4085C72: get_native_class (gunionvolumemonitor.c:493) ==13659== by 0x4087068: g_union_volume_monitor_init (gunionvolumemonitor.c:511) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014BF3: (within /lib/ld-2.6.1.so) ==13659== by 0x4005BE9: (within /lib/ld-2.6.1.so) ==13659== by 0x4007A07: (within /lib/ld-2.6.1.so) ==13659== by 0x400B806: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x400B9E6: (within /lib/ld-2.6.1.so) ==13659== by 0x4010FE3: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== Address 0x43BF660 is 48 bytes inside a block of size 50 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x40058C6: (within /lib/ld-2.6.1.so) ==13659== by 0x4007DAF: (within /lib/ld-2.6.1.so) ==13659== by 0x400B806: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x400B9E6: (within /lib/ld-2.6.1.so) ==13659== by 0x4010FE3: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== ==13659== Invalid read of size 4 ==13659== at 0x4014C37: (within /lib/ld-2.6.1.so) ==13659== by 0x400D319: (within /lib/ld-2.6.1.so) ==13659== by 0x4009826: (within /lib/ld-2.6.1.so) ==13659== by 0x42E8464: (within /lib/tls/i686/cmov/libc-2.6.1.so) ==13659== by 0x42E87F9: _dl_sym (in /lib/tls/i686/cmov/libc-2.6.1.so) ==13659== by 0x40F0DE7: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0D72: dlsym (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED163: g_module_symbol (gmodule-dl.c:147) ==13659== by 0x40ED671: g_module_open (gmodule.c:484) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== Address 0x43BF214 is 76 bytes inside a block of size 78 alloc'd ==13659== at 0x4022765: malloc (vg_replace_malloc.c:149) ==13659== by 0x4006F54: (within /lib/ld-2.6.1.so) ==13659== by 0x4007949: (within /lib/ld-2.6.1.so) ==13659== by 0x4010F83: (within /lib/ld-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x401099D: (within /lib/ld-2.6.1.so) ==13659== by 0x40F0C18: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x400D015: (within /lib/ld-2.6.1.so) ==13659== by 0x40F12BB: (within /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40F0B50: dlopen (in /lib/tls/i686/cmov/libdl-2.6.1.so) ==13659== by 0x40ED588: g_module_open (gmodule-dl.c:99) ==13659== by 0x407D5F3: g_io_module_load_module (giomodule.c:105) ==13659== ==13659== Jump to the invalid address stated on the next line ==13659== at 0x0: ??? ==13659== by 0x44C599E: dbus_message_iter_recurse (in /usr/lib/libdbus-1.so.3.3.0) ==13659== by 0x44A8B4A: list_mounts_reply (gmounttracker.c:389) ==13659== by 0x44C8C90: (within /usr/lib/libdbus-1.so.3.3.0) ==13659== by 0x44B8DC2: (within /usr/lib/libdbus-1.so.3.3.0) ==13659== by 0x44BA935: dbus_connection_dispatch (in /usr/lib/libdbus-1.so.3.3.0) ==13659== by 0x44A3C0C: dbus_source_dispatch (gdbusutils.c:837) ==13659== by 0x412B8DB: g_main_context_dispatch (gmain.c:2064) ==13659== by 0x412ED3E: g_main_context_iterate (gmain.c:2697) ==13659== by 0x412F0E8: g_main_loop_run (gmain.c:2905) ==13659== by 0x804929F: main (gvfs-mount.c:233) ==13659== Address 0x0 is not stack'd, malloc'd or (recently) free'd ==13659== ==13659== Process terminating with default action of signal 11 (SIGSEGV) ==13659== Bad permissions for mapped region at address 0x0 ==13659== at 0x0: ??? ==13659== by 0x44C599E: dbus_message_iter_recurse (in /usr/lib/libdbus-1.so.3.3.0) ==13659== by 0x44A8B4A: list_mounts_reply (gmounttracker.c:389) ==13659== by 0x44C8C90: (within /usr/lib/libdbus-1.so.3.3.0) ==13659== by 0x44B8DC2: (within /usr/lib/libdbus-1.so.3.3.0) ==13659== by 0x44BA935: dbus_connection_dispatch (in /usr/lib/libdbus-1.so.3.3.0) ==13659== by 0x44A3C0C: dbus_source_dispatch (gdbusutils.c:837) ==13659== by 0x412B8DB: g_main_context_dispatch (gmain.c:2064) ==13659== by 0x412ED3E: g_main_context_iterate (gmain.c:2697) ==13659== by 0x412F0E8: g_main_loop_run (gmain.c:2905) ==13659== by 0x804929F: main (gvfs-mount.c:233) ==13659== ==13659== ERROR SUMMARY: 34 errors from 13 contexts (suppressed: 56 from 1) ==13659== malloc/free: in use at exit: 138,863 bytes in 2,738 blocks. ==13659== malloc/free: 8,958 allocs, 6,220 frees, 567,337 bytes allocated. ==13659== For counts of detected errors, rerun with: -v ==13659== searching for pointers to 2,738 not-freed blocks. ==13659== checked 320,720 bytes. ==13659== ==13659== LEAK SUMMARY: ==13659== definitely lost: 1,020 bytes in 85 blocks. ==13659== possibly lost: 5,088 bytes in 28 blocks. ==13659== still reachable: 132,755 bytes in 2,625 blocks. ==13659== suppressed: 0 bytes in 0 blocks. ==13659== Rerun with --leak-check=full to see details of leaked memory. Segmentation fault (core dumped) norbert@lili:/space/ablage/playground/instgio$ _______________________________________________ gnome-vfs-list mailing list gnome-vfs-list@... http://mail.gnome.org/mailman/listinfo/gnome-vfs-list |
|
|
Re: [PATCH] add -l option to gvfs-mount + crash reportnf2 wrote:
> > This patch adds the -l (list mounts) option to gvfs-mount. > > Sorry - here is the patch: Index: programs/gvfs-mount.c =================================================================== --- programs/gvfs-mount.c (revision 1085) +++ programs/gvfs-mount.c (working copy) @@ -35,11 +35,13 @@ static gboolean mount_mountable = FALSE; static gboolean mount_unmount = FALSE; +static gboolean mount_list_mounts = FALSE; static GOptionEntry entries[] = { { "mountable", 'm', 0, G_OPTION_ARG_NONE, &mount_mountable, "Mount as mountable", NULL }, - { "unmount", 'u', 0, G_OPTION_ARG_NONE, &mount_unmount, "Unmount", NULL}, + { "unmount", 'u', 0, G_OPTION_ARG_NONE, &mount_unmount, "Unmount", NULL}, + { "list-mounts", 'l', 0, G_OPTION_ARG_NONE, &mount_list_mounts, "List Mounts", NULL}, { NULL } }; @@ -212,6 +214,58 @@ outstanding_mounts++; } +// =============== list mounts ================== + +static GMainLoop *main_loop; + +static gboolean iterate_gmain_timeout_function(gpointer data) +{ + g_main_loop_quit (main_loop); + return FALSE; +} + +static void iterate_gmain() +{ + + g_timeout_add(500, iterate_gmain_timeout_function, NULL); + + main_loop = g_main_loop_new (NULL, FALSE); + g_main_loop_run (main_loop); + g_main_loop_unref(main_loop); +} + +static void list_mounts() +{ + GVolumeMonitor* gVolumeMonitor = g_volume_monitor_get(); + + // populate gvfs network mounts + iterate_gmain(); + + { + GList* mountList = g_volume_monitor_get_mounts(gVolumeMonitor); + GList* el2 = mountList; + + while(el2) + { + GMount * gMount = (GMount *) el2->data; + + char * mountName = g_mount_get_name(gMount); + GFile * gFileRoot = g_mount_get_root(gMount); + + char * pointsToUri = g_file_get_uri(gFileRoot); + + printf("mountName=%s rootUri=%s\n", mountName, pointsToUri); + + g_object_unref(gFileRoot); + g_free(mountName); + g_free(pointsToUri); + + el2 = g_list_next(el2); + } + } +} + + int main (int argc, char *argv[]) { @@ -229,6 +283,9 @@ g_option_context_parse (context, &argc, &argv, &error); g_option_context_free (context); + if (mount_list_mounts) + list_mounts(); + else if (argc > 1) { int i; _______________________________________________ gnome-vfs-list mailing list gnome-vfs-list@... http://mail.gnome.org/mailman/listinfo/gnome-vfs-list |
|
|
Re: [PATCH] add -l option to gvfs-mount + crash reportHi,
Using CamelCase names such as gFileRoot, mountName and so on is probably not the best idea. Suggest to follow the coding standards. It would also be useful to display the drives and volumes much like the side bar in Nautilus current does (see the Nautilus source code for details), e.g. sorta like this Drive0 Volume0 Mount0 Volume1 Mount1 Volume2 Drive1 Volume_without_drive10 Volume_without_drive11 Mount11 Mount_without_volume20 Mount_without_volume21 or maybe that's another option. Would also be useful to print out the details for each of the GDrive, GVolume and GMount objects (maybe through another option). David _______________________________________________ gnome-vfs-list mailing list gnome-vfs-list@... http://mail.gnome.org/mailman/listinfo/gnome-vfs-list |
|
|
Re: [PATCH] add -l option to gvfs-mount + crash reportDavid Zeuthen wrote:
> Hi, > > Using CamelCase names such as gFileRoot, mountName and so on is probably > not the best idea. Suggest to follow the coding standards. > > It would also be useful to display the drives and volumes much like the > side bar in Nautilus current does (see the Nautilus source code for > details), e.g. sorta like this > > Drive0 > Volume0 > Mount0 > Volume1 > Mount1 > Volume2 > Drive1 > > Volume_without_drive10 > Volume_without_drive11 > Mount11 > > Mount_without_volume20 > Mount_without_volume21 > when gvfsd is not running. Cheers, Norbert Index: common/gmounttracker.c =================================================================== --- common/gmounttracker.c (revision 1085) +++ common/gmounttracker.c (working copy) @@ -386,18 +386,25 @@ dbus_pending_call_unref (pending); b = dbus_message_iter_init (reply, &iter); - dbus_message_iter_recurse (&iter, &array_iter); - - do + if (b && dbus_message_iter_get_arg_type(&iter) == DBUS_TYPE_ARRAY) { - info = g_mount_info_from_dbus (&array_iter); - if (info) - { - g_mount_tracker_add_mount (tracker, info); - g_mount_info_unref (info); - } + dbus_message_iter_recurse (&iter, &array_iter); + + do + { + info = g_mount_info_from_dbus (&array_iter); + if (info) + { + g_mount_tracker_add_mount (tracker, info); + g_mount_info_unref (info); + } + } + while (dbus_message_iter_next (&array_iter)); } - while (dbus_message_iter_next (&array_iter)); + else + { + /* list_mounts_reply problem - gvfsd not running? */ + } dbus_message_unref (reply); } Index: programs/gvfs-mount.c =================================================================== --- programs/gvfs-mount.c (revision 1085) +++ programs/gvfs-mount.c (working copy) @@ -35,11 +35,13 @@ static gboolean mount_mountable = FALSE; static gboolean mount_unmount = FALSE; +static gboolean mount_list = FALSE; static GOptionEntry entries[] = { { "mountable", 'm', 0, G_OPTION_ARG_NONE, &mount_mountable, "Mount as mountable", NULL }, - { "unmount", 'u', 0, G_OPTION_ARG_NONE, &mount_unmount, "Unmount", NULL}, + { "unmount", 'u', 0, G_OPTION_ARG_NONE, &mount_unmount, "Unmount", NULL}, + { "list", 'l', 0, G_OPTION_ARG_NONE, &mount_list, "List", NULL}, { NULL } }; @@ -212,6 +214,129 @@ outstanding_mounts++; } +// =============== list mounts ================== + +static GMainLoop *main_loop; + +const char indentstr[] = " "; + +#define get_indent_str(x) indentstr + (sizeof(indentstr)-x-1) + +static gboolean iterate_gmain_timeout_function(gpointer data) +{ + g_main_loop_quit (main_loop); + return FALSE; +} + +static void iterate_gmain() +{ + g_timeout_add(500, iterate_gmain_timeout_function, NULL); + + main_loop = g_main_loop_new (NULL, FALSE); + g_main_loop_run (main_loop); + g_main_loop_unref(main_loop); +} + +static void list_mounts(GVolumeMonitor* volume_monitor, int indent, GDrive * forDrive, GVolume * forVolume) +{ + GList* mount_list = g_volume_monitor_get_mounts(volume_monitor); + + GList* mount_list_el = mount_list; + int c=0; + for(;mount_list_el != NULL; mount_list_el = g_list_next(mount_list_el), c++) + { + GMount * mount = (GMount *) mount_list_el->data; + + if (forDrive && g_mount_get_drive(mount)!=forDrive) + continue; + if (forVolume && g_mount_get_volume(mount)!=forVolume) + continue; + if (!forDrive && !forVolume && (g_mount_get_volume(mount) || g_mount_get_drive(mount))) + continue; + + char * mount_uuid = g_mount_get_uuid(mount); + char * mount_name = g_mount_get_name(mount); + GFile * file_root = g_mount_get_root(mount); + + char * points_to_uri = g_file_get_uri(file_root); + + printf("%sMount(%d) : %s -> %s\n", get_indent_str(indent), c, mount_name, points_to_uri); + + g_object_unref(file_root); + g_free(mount_uuid); + g_free(mount_name); + g_free(points_to_uri); + } +} + + +static void list_volumes(GVolumeMonitor* volume_monitor, int indent, GDrive * forDrive) +{ + + GList* volume_list = g_volume_monitor_get_volumes(volume_monitor); + GList* volume_list_el = volume_list; + + int c=0; + for(;volume_list_el!=NULL;volume_list_el = g_list_next(volume_list_el), c++) + { + GVolume * volume = (GVolume *) volume_list_el->data; + + if (forDrive && g_volume_get_drive(volume)!=forDrive) + continue; + if (!forDrive && g_volume_get_drive(volume)) + continue; + + char * volume_name = g_volume_get_name(volume); + + printf("%sVolume(%d) : %s\n", get_indent_str(indent), c, volume_name); + g_free(volume_name); + + list_mounts(volume_monitor, indent+2, NULL, volume); + + } +} + + +static void list_drives(GVolumeMonitor* volume_monitor, int indent) +{ + GList* drive_list = g_volume_monitor_get_connected_drives(volume_monitor); + + GList* drive_list_el = drive_list; + + int c=0; + while(drive_list_el) + { + GDrive * drive = (GDrive *) drive_list_el->data; + + char * drive_name = g_drive_get_name(drive); + + printf("%sDrive(%d) : %s\n", get_indent_str(indent), c, drive_name); + g_free(drive_name); + + list_mounts(volume_monitor, indent+2, drive, NULL); + list_volumes(volume_monitor, indent+2, drive); + + drive_list_el = g_list_next(drive_list_el); + c++; + } +} + + + +static void list_monitor_items() +{ + GVolumeMonitor* volume_monitor = g_volume_monitor_get(); + + // populate gvfs network mounts + iterate_gmain(); + + list_drives(volume_monitor, 0); + list_volumes(volume_monitor, 0, NULL); + list_mounts(volume_monitor, 0, NULL, NULL); + +} + + int main (int argc, char *argv[]) { @@ -229,6 +354,9 @@ g_option_context_parse (context, &argc, &argv, &error); g_option_context_free (context); + if (mount_list) + list_monitor_items(); + else if (argc > 1) { int i; _______________________________________________ gnome-vfs-list mailing list gnome-vfs-list@... http://mail.gnome.org/mailman/listinfo/gnome-vfs-list |
|
|
Re: [PATCH] add -l option to gvfs-mount + crash reportOn Wed, 2008-01-09 at 21:32 +0100, nf2 wrote: > David Zeuthen wrote: > > Hi, > > > > Using CamelCase names such as gFileRoot, mountName and so on is probably > > not the best idea. Suggest to follow the coding standards. > > > > It would also be useful to display the drives and volumes much like the > > side bar in Nautilus current does (see the Nautilus source code for > > details), e.g. sorta like this > > > > Drive0 > > Volume0 > > Mount0 > > Volume1 > > Mount1 > > Volume2 > > Drive1 > > > > Volume_without_drive10 > > Volume_without_drive11 > > Mount11 > > > > Mount_without_volume20 > > Mount_without_volume21 > > > Here is a patch which also lists drives and volumes. Additionally it > tries to fix the crash in gmounttracker.c, caused by an empty DBus reply > when gvfsd is not running. I fixed up this a bit and commited it. It also has an extra -i argument to show more info about the objects. _______________________________________________ gnome-vfs-list mailing list gnome-vfs-list@... http://mail.gnome.org/mailman/listinfo/gnome-vfs-list |
| Free embeddable forum powered by Nabble | Forum Help |