GNOME Bugzilla – Bug 760307
Warnings and lock ups when using "copy to"
Last modified: 2016-03-09 16:18:08 UTC
Using nautilus 3.18.4 - mount another partition - go to a directory on the partition you just mounted - select a file and use "copy to" those warnings are printed " GLib-GObject-WARNING **: cannot register existing type 'GtkPlacesView' GLib-GObject-WARNING **: cannot add private field to invalid (non-instantiatable) type '<invalid>' g_once_init_leave: assertion 'result != 0' failed" - try to do the same on another file -> nautilus locks up
Created attachment 321828 [details] [review] placesview: avoid symbol conflicts Copy pasting the code from gtk+ has the downside that symbol conflicts occur when the file chooser is shown, for example, when performing a move to action. Only way to dealing with it is either make this public on gtk+ or renaming the types. We don't want to make it public yet, so the only option for now is renaming. Is a tedious task and I hope it won't be needed in the future. For now, rename the types manually.
Attachment 321828 [details] pushed as 82a27ab - placesview: avoid symbol conflicts
Created attachment 323520 [details] [review] placesview: auto generate code We have been manually copying the code inside nautilus since we introduced the places view. It has been a pain to maintain, mostly because we needed to remove the bits that only work inside gtk+ and instead either remove them or make a substitution. But that was doable. However, it reached a new level when we realized that we use the file chooser inside nautilus, for the "move to" and "copy to" actions, which create makes symbols clash. So we needed to rename all the symbols in those files. Instead of making it manually, create a shell script that fetches gtk+ repository and make the appropriate substitutions, deletions and what not.
Comment on attachment 323520 [details] [review] placesview: auto generate code This uses automatic conversion. Attachment 323520 [details] pushed as 0fec6f2 - placesview: auto generate code