It is suggested by a core developer of Gnome-Do (a program written with Mono) that there is a bug in Mono that causes an IO exception when encountering a broken symbolic link.
The initial bug report was made on Launchpad because the bug was encountered in Ubuntu.
Exception in Gtk# callback delegate
Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
System.IO.IOException: Win32 IO returned ERROR_NO_MORE_FILES. Path: /home/christophe/.local/share/Trash/files
at System.IO.Directory.GetFileSystemEntries (System.String path, System.String searchPattern, FileAttributes mask, FileAttributes attrs) [0x00000]
at System.IO.Directory.GetFiles (System.String path, System.String searchPattern) [0x00000]
at System.IO.Directory.GetFiles (System.String path) [0x00000]
at Docky.Interface.TrashDockItem.get_Icon () [0x00000]
at Docky.Interface.AbstractDockItem.GetSurfacePixbuf (Int32 size) [0x00000]
at Docky.Interface.AbstractDockItem.MakeIconSurface (Cairo.Surface similar, Int32 size) [0x00000]
at Docky.Interface.AbstractDockItem.GetIconSurface (Cairo.Surface similar, Int32 targetSize, System.Int32& actualSize) [0x00000]
at Docky.Interface.DockArea.DrawIcon (Cairo.Context cr, Int32 icon, Boolean hovered) [0x00000]
at Docky.Interface.DockArea.DrawIcons (Cairo.Context cr, Rectangle dockArea) [0x00000]
at Docky.Interface.DockArea.DrawDock (Cairo.Context cr) [0x00000]
at Docky.Interface.DockArea.OnExposeEvent (Gdk.EventExpose evnt) [0x00000]
at Gtk.Widget.exposeevent_cb (IntPtr widget, IntPtr evnt) [0x00000]
at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal)
at Gtk.Widget.exposeevent_cb(IntPtr widget, IntPtr evnt)
at Gtk.Application.gtk_main()
at Gtk.Application.Run()
at Do.Do.Main(System.String[] args)
Cairo.Context: called from finalization thread, programmer is missing a call to Dispose
Description of Problem:
It is suggested by a core developer of Gnome-Do (a program written with Mono) that there is a bug in Mono that causes an IO exception when encountering a broken symbolic link.
The initial bug report was made on Launchpad because the bug was encountered in Ubuntu.
The link to the bug report: https:/ /bugs.launchpad .net/ubuntu/ +source/ gnome-do/ +bug/476402
The debugging dump that the specific program gave can be found here: http:// launchpadlibrar ian.net/ 35270262/ debug.txt
The interesting part of the debug file is this:
Exception in Gtk# callback delegate anager. UnhandledExcept ion to handle the exception. IO.IOException: Win32 IO returned ERROR_NO_ MORE_FILES. Path: /home/christoph e/.local/ share/Trash/ files IO.Directory. GetFileSystemEn tries (System.String path, System.String searchPattern, FileAttributes mask, FileAttributes attrs) [0x00000] IO.Directory. GetFiles (System.String path, System.String searchPattern) [0x00000] IO.Directory. GetFiles (System.String path) [0x00000] .TrashDockItem. get_Icon () [0x00000] .AbstractDockIt em.GetSurfacePi xbuf (Int32 size) [0x00000] .AbstractDockIt em.MakeIconSurf ace (Cairo.Surface similar, Int32 size) [0x00000] .AbstractDockIt em.GetIconSurfa ce (Cairo.Surface similar, Int32 targetSize, System.Int32& actualSize) [0x00000] .DockArea. DrawIcon (Cairo.Context cr, Int32 icon, Boolean hovered) [0x00000] .DockArea. DrawIcons (Cairo.Context cr, Rectangle dockArea) [0x00000] .DockArea. DrawDock (Cairo.Context cr) [0x00000] .DockArea. OnExposeEvent (Gdk.EventExpose evnt) [0x00000] exposeevent_ cb (IntPtr widget, IntPtr evnt) [0x00000] anager. RaiseUnhandledE xception( System. Exception e, Boolean is_terminal) exposeevent_ cb(IntPtr widget, IntPtr evnt) .gtk_main( ) .Run() System. String[ ] args)
Note: Applications can use GLib.ExceptionM
System.
at System.
at System.
at System.
at Docky.Interface
at Docky.Interface
at Docky.Interface
at Docky.Interface
at Docky.Interface
at Docky.Interface
at Docky.Interface
at Docky.Interface
at Gtk.Widget.
at GLib.ExceptionM
at Gtk.Widget.
at Gtk.Application
at Gtk.Application
at Do.Do.Main(
Cairo.Context: called from finalization thread, programmer is missing a call to Dispose