After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 632246 - SourceRowRenderer: MissingIntPtrCtorException
SourceRowRenderer: MissingIntPtrCtorException
Status: RESOLVED FIXED
Product: banshee
Classification: Other
Component: general
git master
Other Linux
: Normal normal
: 1.x
Assigned To: Banshee Maintainers
Banshee Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-10-15 18:57 UTC by David Nielsen
Modified: 2010-11-30 16:50 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
proposed patch (927 bytes, patch)
2010-10-15 18:59 UTC, David Nielsen
rejected Details | Review
fix for the root cause of the issue (973 bytes, patch)
2010-10-15 19:45 UTC, Alan McGovern
committed Details | Review

Description David Nielsen 2010-10-15 18:57:37 UTC
Reported via IRC by Jasper St. Pierre

jstpierre@jstpierre-ubuntu:~/Source$ banshee
[Info  14:26:39.209] Running Banshee 1.8.0: [Ubuntu maverick (development branch) (linux-gnu, x86_64) @ 2010-09-30 23:37:58 UTC]
[Info  14:26:40.317] Updating web proxy from GConf
[Info  14:26:40.497] All services are started 0.980003
[Info  14:26:41.451] nereid Client Started
[Info  14:26:41.736] AppleDeviceSource is ignoring unmounted volume System Reserved
[Warn  14:26:41.738] Caught an exception - System.InvalidOperationException: Operation is not valid due to the current state of the object (in `Banshee.Dap.AppleDevice')
  at Banshee.Dap.AppleDevice.AppleDeviceSource.DeviceInitialize (IDevice device) [0x00000] in <filename unknown>:0 
  at Banshee.Dap.DapService.FindDeviceSource (IDevice device) [0x00000] in <filename unknown>:0 
Exception in Gtk# callback delegate
  Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
GLib.MissingIntPtrCtorException: GLib.Object subclass Banshee.Sources.Gui.SourceRowRenderer must provide a protected or public IntPtr ctor to support wrapping of native object handles.
  at GLib.ObjectManager.CreateObject (IntPtr raw) [0x00000] in <filename unknown>:0 
  at GLib.Object.GetObject (IntPtr o, Boolean owned_ref) [0x00000] in <filename unknown>:0 
  at GLib.Object.GetObject (IntPtr o) [0x00000] in <filename unknown>:0 
  at GtkSharp.CellLayoutDataFuncWrapper.NativeCallback (IntPtr cell_layout, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data) [0x00000] in <filename unknown>:0 
   at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal)
   at GtkSharp.CellLayoutDataFuncWrapper.NativeCallback(IntPtr cell_layout, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data)
   at Gtk.Widget.gtksharp_widget_base_expose_event(IntPtr , IntPtr )
   at Gtk.Widget.OnExposeEvent(Gdk.EventExpose evnt)
   at Banshee.Sources.Gui.SourceView.OnExposeEvent(Gdk.EventExpose evnt)
   at Gtk.Widget.exposeevent_cb(IntPtr widget, IntPtr evnt)
   at Gtk.Application.gtk_main()
   at Gtk.Application.Run()
   at Banshee.Gui.GtkBaseClient.Run()
   at Banshee.Gui.GtkBaseClient.Startup()
   at Hyena.Gui.CleanRoomStartup.Startup(Hyena.Gui.StartupInvocationHandler startup)
   at Banshee.Gui.GtkBaseClient.Startup()
   at Banshee.Gui.GtkBaseClient.Startup(System.String[] args)
   at Nereid.Client.Main(System.String[] args)
   at System.AppDomain.ExecuteAssembly(System.Reflection.Assembly , System.String[] )
   at System.AppDomain.ExecuteAssemblyInternal(System.Reflection.Assembly a, System.String[] args)
   at System.AppDomain.ExecuteAssembly(System.String assemblyFile, System.Security.Policy.Evidence assemblySecurity, System.String[] args)
   at System.AppDomain.ExecuteAssembly(System.String assemblyFile)
   at Booter.Booter.BootClient(System.String clientName)
   at Booter.Booter.Main()
Comment 1 David Nielsen 2010-10-15 18:59:28 UTC
Created attachment 172448 [details] [review]
proposed patch

Proposed patch introducing the IntPtr ctor
Comment 2 Alan McGovern 2010-10-15 19:45:53 UTC
Created attachment 172452 [details] [review]
fix for the root cause of the issue

Could someone who can repro this issue try applying this alternative patch instead of the initial patch. This should fix the root cause of the issue.
Comment 3 Gabriel Burt 2010-11-05 17:31:27 UTC
Review of attachment 172448 [details] [review]:

Alan's is the better approach.
Comment 4 Gabriel Burt 2010-11-05 17:31:35 UTC
Review of attachment 172452 [details] [review]:

Thanks Alan, please commit.
Comment 5 Gabriel Burt 2010-11-07 23:03:42 UTC
Review of attachment 172452 [details] [review]:

Committed
Comment 6 David Nielsen 2010-11-24 03:47:40 UTC
Sorry to disappoint, but this one just popped up again on git master.

Exception in Gtk# callback delegate
  Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
GLib.MissingIntPtrCtorException: GLib.Object subclass Banshee.Sources.Gui.SourceRowRenderer must provide a protected or public IntPtr ctor to support wrapping of native object handles.
  at GLib.ObjectManager.CreateObject (IntPtr raw) [0x00000] in <filename unknown>:0 
  at GLib.Object.GetObject (IntPtr o, Boolean owned_ref) [0x00000] in <filename unknown>:0 
  at GLib.Object.GetObject (IntPtr o) [0x00000] in <filename unknown>:0 
  at GtkSharp.CellLayoutDataFuncWrapper.NativeCallback (IntPtr cell_layout, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data) [0x00000] in <filename unknown>:0 
   at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal)
   at GtkSharp.CellLayoutDataFuncWrapper.NativeCallback(IntPtr cell_layout, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data)
   at Gtk.Widget.gtksharp_widget_base_expose_event(IntPtr , IntPtr )
   at Gtk.Widget.OnExposeEvent(Gdk.EventExpose evnt)
   at Banshee.Sources.Gui.SourceView.OnExposeEvent(Gdk.EventExpose evnt) in /home/david/Projekter/banshee/src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceView.cs:line 311
   at Gtk.Widget.exposeevent_cb(IntPtr widget, IntPtr evnt)
   at Gtk.Application.gtk_main()
   at Gtk.Application.Run()
   at Banshee.Gui.GtkBaseClient.Run() in /home/david/Projekter/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 205
   at Banshee.Gui.GtkBaseClient.Startup() in /home/david/Projekter/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 82
   at Hyena.Gui.CleanRoomStartup.Startup(Hyena.Gui.StartupInvocationHandler startup) in /home/david/Projekter/banshee/src/Hyena/Hyena.Gui/Hyena.Gui/CleanRoomStartup.cs:line 54
   at Banshee.Gui.GtkBaseClient.Startup() in /home/david/Projekter/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 77
   at Banshee.Gui.GtkBaseClient.Startup(System.String[] args) in /home/david/Projekter/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 67
   at Nereid.Client.Main(System.String[] args) in /home/david/Projekter/banshee/src/Clients/Nereid/Nereid/Client.cs:line 54
   at System.AppDomain.ExecuteAssembly(System.Reflection.Assembly , System.String[] )
   at System.AppDomain.ExecuteAssemblyInternal(System.Reflection.Assembly a, System.String[] args)
   at System.AppDomain.ExecuteAssembly(System.String assemblyFile, System.Security.Policy.Evidence assemblySecurity, System.String[] args)
   at System.AppDomain.ExecuteAssembly(System.String assemblyFile)
   at Booter.Booter.BootClient(System.String clientName) in /home/david/Projekter/banshee/src/Clients/Booter/Booter/Entry.cs:line 112
   at Booter.Booter.Main() in /home/david/Projekter/banshee/src/Clients/Booter/Booter/Entry.cs:line 105
Comment 7 David Nielsen 2010-11-26 19:16:41 UTC
*** Bug 635725 has been marked as a duplicate of this bug. ***