** Visibility changed to: Public ** Description changed:
Binary package hint: pcmanfm [Apport's automatically generated name for this bug report was: "pcmanfm assert failure: *** glibc detected *** pcmanfm: free(): invalid pointer: 0x00000000017977d1 ***"] On a Maverick amd64 system with pcmanfm 0.9.7-1ubuntu1 and libfm0/libfm- gtk0 0.1.12-1ubuntu2, crashes occur when attempting to navigate to a directory on unmounted volumes, using a path that is rooted in a mounted volume and branches into the unmounted volume via a symbolic link. More generally, pcmanfm appears to crash when attempting to navigate to a symbolic link with a nonexistent target, and when attempting to navigate through such a link (to a subdirectory of the nonexistent target). Apport did not come up for any crashes but the first, but the behaviour of some of the subsequent crashes was identical to that of the original crash and the behaviour of all of them was mostly the same, and furthermore, checking the PID of pcmanfm revealed that the PID was different after each event in which pcmanfm malfunctioned and the pcmanfm window closed. (This all occurred in a Lubuntu Desktop Session, so generally speaking when a pcmanfm window closes, it does not actually quit the pcmanfm process.) The first crash I experienced (from which the attached stack trace derives) occurred when clicking a bookmark called "Complete" targeted at "/home/ek/Torrents/Complete". The paths "/home" and "/home/ek" are on /dev/sda7, which is an ext4 volume (and the volume in which the Ubuntu system is installed--I do not have a separate partition for /home). However, /home/ek/Torrents is a symbolic link to /media/Wingardium/Users/ek/Torrents, and /media/Wingardium is the mount point used by udisks to mount /dev/sda3, which is an NTFS volume. The volume /dev/sda3 was not mounted at the time. I repeated my attempt to navigate to it by clicking on the "Complete" bookmark, and the crash was repeated. Then I mounted the volume, clicked on the "Complete" bookmark, and the crash no longer occurred. Then I unmounted the volume and tried again, and the crash occurred again, as expected. Subsequently (also while the volume containing the symbolic link's target directory was unmounted), I tried typing in the path "/home/ek/Torrents" and pressing enter. This resulted in what appeared to be the same immediate crash. I did this a few more times--some of the time, before the crash, I was able to see a message box with "Error" as its title and "The specified directory is not valid" as its message, but the crash always occurred before I had the chance to click the OK button. Then (with that volume still unmounted), I decided to try typing in the path "/home/ek/Torrents/Complete", to see if that also produced a crash. I had expected that when I entered that path and pressed enter, that it would produce a crash more like the one that had occurred when I clicked the "Complete" bookmark to /home/ek/Torrents/Complete (i.e., that I would not see an error message at all before the crash). Instead, I was unable to finish typing that path--once I typed the slash before "Complete", pcmanfm crashed immediately. My guess, in hindsight, is that this happened because pcmanfm attempted to look inside /home/ek/Torrents/Complete in order to provide autocompletion suggestions. After I performed all that testing, from within the LXTerminal I created a directory called test inside my home folder (so its full path was "/home/ek/test") and created a symbolic link to it called /home/ek/test2. Then I deleted the original directory, but left the symbolic link. Then I opened a pcmanfm window and typed in the path "/home/ek/test2". The result is that same message box coming up (with the "The specified directory is not valid" error). But pcmanfm does not crash immediately, in this situation. Instead, it crashes when I click OK in the message box. I have verified that pcmanfm does not generally crash when the "The specified directory is not valid" error occurs, by typing "/home/ek/test" (the nonexistent directory, not the existent symbolic link to it) in the address bar and pressing enter. This produces that error message box (as is the expected and correct behaviour), but does not result in a crash. ProblemType: Crash DistroRelease: Ubuntu 10.10 Package: pcmanfm 0.9.7-1ubuntu1 ProcVersionSignature: Ubuntu 2.6.35-28.50-generic 2.6.35.11 Uname: Linux 2.6.35-28-generic x86_64 Architecture: amd64 AssertionMessage: *** glibc detected *** pcmanfm: free(): invalid pointer: 0x00000000017977d1 *** CrashCounter: 1 Date: Fri Apr 1 01:49:15 2011 ExecutablePath: /usr/bin/pcmanfm InstallationMedia: Xubuntu 10.04 "Lucid Lynx" - Beta amd64 (20100406) Pref_Config_System_Lubuntu: - [Preferred Applications] - WebBrowser=firefox.desktop - MailClient= + [Preferred Applications] + WebBrowser=firefox.desktop + MailClient= ProcCmdline: pcmanfm --desktop --profile lubuntu ProcEnviron: - LANGUAGE=en_US.utf8 - LANG=en_US.utf8 - LC_MESSAGES=en_US.utf8 - SHELL=/bin/bash + LANGUAGE=en_US.utf8 + LANG=en_US.utf8 + LC_MESSAGES=en_US.utf8 + SHELL=/bin/bash RelatedPackageVersions: - libmenu-cache1 0.3.2-2 - pcmanfm 0.9.7-1ubuntu1 - udisks 1.0.1+git20100614-3 - gvfs 1.6.4-0ubuntu1.1 + libmenu-cache1 0.3.2-2 + pcmanfm 0.9.7-1ubuntu1 + udisks 1.0.1+git20100614-3 + gvfs 1.6.4-0ubuntu1.1 Signal: 6 SourcePackage: pcmanfm StacktraceTop: - raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 - abort () at abort.c:92 - __libc_message (do_abort=<value optimized out>, fmt=<value optimized out>) at ../sysdeps/unix/sysv/linux/libc_fatal.c:189 - malloc_printerr (action=3, str=0x7f58feb21e33 "free(): invalid pointer", ptr=<value optimized out>) at malloc.c:6283 - __libc_free (mem=<value optimized out>) at malloc.c:3738 + raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 + abort () at abort.c:92 + __libc_message (do_abort=<value optimized out>, fmt=<value optimized out>) at ../sysdeps/unix/sysv/linux/libc_fatal.c:189 + malloc_printerr (action=3, str=0x7f58feb21e33 "free(): invalid pointer", ptr=<value optimized out>) at malloc.c:6283 + __libc_free (mem=<value optimized out>) at malloc.c:3738 Title: pcmanfm assert failure: *** glibc detected *** pcmanfm: free(): invalid pointer: 0x00000000017977d1 *** UserGroups: adm admin cdrom lpadmin plugdev sambashare ** Description changed: Binary package hint: pcmanfm [Apport's automatically generated name for this bug report was: "pcmanfm assert failure: *** glibc detected *** pcmanfm: free(): invalid pointer: 0x00000000017977d1 ***"] On a Maverick amd64 system with pcmanfm 0.9.7-1ubuntu1 and libfm0/libfm- gtk0 0.1.12-1ubuntu2, crashes occur when attempting to navigate to a directory on unmounted volumes, using a path that is rooted in a mounted volume and branches into the unmounted volume via a symbolic link. More generally, pcmanfm appears to crash when attempting to navigate to a symbolic link with a nonexistent target, and when attempting to navigate through such a link (to a subdirectory of the nonexistent target). Apport did not come up for any crashes but the first, but the behaviour of some of the subsequent crashes was identical to that of the original crash and the behaviour of all of them was mostly the same, and furthermore, checking the PID of pcmanfm revealed that the PID was different after each event in which pcmanfm malfunctioned and the pcmanfm window closed. (This all occurred in a Lubuntu Desktop Session, so generally speaking when a pcmanfm window closes, it does not actually quit the pcmanfm process.) The first crash I experienced (from which the attached stack trace derives) occurred when clicking a bookmark called "Complete" targeted at "/home/ek/Torrents/Complete". The paths "/home" and "/home/ek" are on /dev/sda7, which is an ext4 volume (and the volume in which the Ubuntu system is installed--I do not have a separate partition for /home). However, /home/ek/Torrents is a symbolic link to /media/Wingardium/Users/ek/Torrents, and /media/Wingardium is the mount point used by udisks to mount /dev/sda3, which is an NTFS volume. The volume /dev/sda3 was not mounted at the time. I repeated my attempt to navigate to it by clicking on the "Complete" bookmark, and the crash was repeated. Then I mounted the volume, clicked on the "Complete" bookmark, and the crash no longer occurred. Then I unmounted the volume and tried again, and the crash occurred again, as expected. Subsequently (also while the volume containing the symbolic link's target directory was unmounted), I tried typing in the path "/home/ek/Torrents" and pressing enter. This resulted in what appeared to be the same immediate crash. I did this a few more times--some of the time, before the crash, I was able to see a message box with "Error" as its title and "The specified directory is not valid" as its message, but the crash always occurred before I had the chance to click the OK button. Then (with that volume still unmounted), I decided to try typing in the path "/home/ek/Torrents/Complete", to see if that also produced a crash. I had expected that when I entered that path and pressed enter, that it would produce a crash more like the one that had occurred when I clicked the "Complete" bookmark to /home/ek/Torrents/Complete (i.e., that I would not see an error message at all before the crash). Instead, I was unable to finish typing that path--once I typed the slash before "Complete", pcmanfm crashed immediately. My guess, in hindsight, is that this happened because pcmanfm attempted to look inside /home/ek/Torrents/Complete in order to provide autocompletion suggestions. After I performed all that testing, from within the LXTerminal I created a directory called test inside my home folder (so its full path was "/home/ek/test") and created a symbolic link to it called /home/ek/test2. Then I deleted the original directory, but left the symbolic link. Then I opened a pcmanfm window and typed in the path "/home/ek/test2". The result is that same message box coming up (with the "The specified directory is not valid" error). But pcmanfm does not crash immediately, in this situation. Instead, it crashes when I click OK in the message box. + Similarly to the situation in which pcmanfm appeared to crash when I + typed in "/home/ek/Torrents/", it also appears to crash when I type in + "/home/ek/test2/" (also without having to press enter after that and + without any appreciable delay after typing the final / character). + I have verified that pcmanfm does not generally crash when the "The specified directory is not valid" error occurs, by typing "/home/ek/test" (the nonexistent directory, not the existent symbolic link to it) in the address bar and pressing enter. This produces that error message box (as is the expected and correct behaviour), but does not result in a crash. ProblemType: Crash DistroRelease: Ubuntu 10.10 Package: pcmanfm 0.9.7-1ubuntu1 ProcVersionSignature: Ubuntu 2.6.35-28.50-generic 2.6.35.11 Uname: Linux 2.6.35-28-generic x86_64 Architecture: amd64 AssertionMessage: *** glibc detected *** pcmanfm: free(): invalid pointer: 0x00000000017977d1 *** CrashCounter: 1 Date: Fri Apr 1 01:49:15 2011 ExecutablePath: /usr/bin/pcmanfm InstallationMedia: Xubuntu 10.04 "Lucid Lynx" - Beta amd64 (20100406) Pref_Config_System_Lubuntu: [Preferred Applications] WebBrowser=firefox.desktop MailClient= ProcCmdline: pcmanfm --desktop --profile lubuntu ProcEnviron: LANGUAGE=en_US.utf8 LANG=en_US.utf8 LC_MESSAGES=en_US.utf8 SHELL=/bin/bash RelatedPackageVersions: libmenu-cache1 0.3.2-2 pcmanfm 0.9.7-1ubuntu1 udisks 1.0.1+git20100614-3 gvfs 1.6.4-0ubuntu1.1 Signal: 6 SourcePackage: pcmanfm StacktraceTop: raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 abort () at abort.c:92 __libc_message (do_abort=<value optimized out>, fmt=<value optimized out>) at ../sysdeps/unix/sysv/linux/libc_fatal.c:189 malloc_printerr (action=3, str=0x7f58feb21e33 "free(): invalid pointer", ptr=<value optimized out>) at malloc.c:6283 __libc_free (mem=<value optimized out>) at malloc.c:3738 Title: pcmanfm assert failure: *** glibc detected *** pcmanfm: free(): invalid pointer: 0x00000000017977d1 *** UserGroups: adm admin cdrom lpadmin plugdev sambashare -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/747009 Title: pcmanfm crashes when navigating to or through a symbolic link with a nonexistent target -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs