#0 gtk_application_impl_set_menubar (impl=0x0, menubar=0x0) at ../../../../gtk/gtkapplicationimpl.c:132 [Error: gtkapplicationimpl.c was not found in source tree] #1 0x00007fc1a0e0f047 in gtk_application_set_menubar (application=0x564af64a1390, menubar=menubar@entry=0x0) at ../../../../gtk/gtkapplication.c:1121 [Error: gtkapplication.c was not found in source tree] #2 0x0000564af4375696 in application_set_menubar (model=model@entry=0x0) at ./src/Application.vala:103 98: public static void set_accels_for_action (string action, string[] accel) { 99: get_instance().system_app.set_accels_for_action (action, accel); 100: } 101: 102: public static void set_menubar (GLib.MenuModel? model) { 103: get_instance().system_app.set_menubar (model); 104: } 105: 106: /** 107: * @brief Signal handler for GApplication's 'command-line' signal. 108: * #3 0x0000564af41ce0fc in library_window_switch_to_page (self=self@entry=0x564af6a59b80, page=page@entry=0x564af71fab80) at ./src/library/LibraryWindow.vala:1219 1214: return; 1215: 1216: Page current_page = get_current_page(); 1217: if (current_page != null) { 1218: set_show_menubar (false); 1219: Application.set_menubar (null); 1220: 1221: Gtk.Toolbar toolbar = current_page.get_toolbar(); 1222: if (toolbar != null) 1223: toolbar_revealer.remove(toolbar); 1224: #4 0x0000564af41ced86 in library_window_on_sidebar_entry_selected (selectable=, self=0x564af6a59b80) at ./src/library/LibraryWindow.vala:1335 1330: } 1331: 1332: private void on_sidebar_entry_selected(Sidebar.SelectableEntry selectable) { 1333: Sidebar.PageRepresentative? page_rep = selectable as Sidebar.PageRepresentative; 1334: if (page_rep != null) 1335: switch_to_page(page_rep.get_page()); 1336: } 1337: 1338: private void on_sidebar_selected_entry_removed(Sidebar.SelectableEntry selectable) { 1339: // if the currently selected item is removed, want to jump to fallback page (which 1340: // depends on the item that was selected) #5 _library_window_on_sidebar_entry_selected_sidebar_tree_entry_selected (_sender=, selectable=, self=0x564af6a59b80) at ./src/library/LibraryWindow.vala:224 219: } 220: 221: ~LibraryWindow() { 222: sidebar_tree.page_created.disconnect(on_page_created); 223: sidebar_tree.destroying_page.disconnect(on_destroying_page); 224: sidebar_tree.entry_selected.disconnect(on_sidebar_entry_selected); 225: sidebar_tree.selected_entry_removed.disconnect(on_sidebar_selected_entry_removed); 226: 227: unsubscribe_from_basic_information(get_current_page()); 228: 229: extended_properties.hide.disconnect(hide_extended_properties); #6 0x00007fc19e5cef9d in g_closure_invoke (closure=0x564af6b13f30, return_value=0x0, n_param_values=2, param_values=0x7ffcfb5d22e0, invocation_hint=0x7ffcfb5d2260) at ../../../../gobject/gclosure.c:804 [Error: gclosure.c was not found in source tree] #7 0x00007fc19e5e1cde in signal_emit_unlocked_R (node=node@entry=0x564af6aed750, detail=detail@entry=0, instance=instance@entry=0x564af6ae39e0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffcfb5d22e0) at ../../../../gobject/gsignal.c:3635 [Error: gsignal.c was not found in source tree] #8 0x00007fc19e5ea4b5 in g_signal_emit_valist (instance=0x564af6ae39e0, signal_id=, detail=0, var_args=var_args@entry=0x7ffcfb5d24b0) at ../../../../gobject/gsignal.c:3391 [Error: gsignal.c was not found in source tree] #9 0x00007fc19e5eaecf in g_signal_emit (instance=instance@entry=0x564af6ae39e0, signal_id=, detail=detail@entry=0) at ../../../../gobject/gsignal.c:3447 [Error: gsignal.c was not found in source tree] #10 0x0000564af4216ce5 in sidebar_tree_real_cursor_changed (base=) at ./src/sidebar/Tree.vala:330 325: 326: if (wrapper != null && !mask_entry_selected_signal) { 327: Sidebar.SelectableEntry? selectable = wrapper.entry as Sidebar.SelectableEntry; 328: if (selectable != null) { 329: if (accept_cursor_changed()) { 330: entry_selected(selectable); 331: } else { 332: place_cursor(old_wrapper.entry, true); 333: } 334: } 335: } #11 0x00007fc19e5cef9d in g_closure_invoke (closure=0x564af65f9f60, return_value=0x0, n_param_values=1, param_values=0x7ffcfb5d27b0, invocation_hint=0x7ffcfb5d2730) at ../../../../gobject/gclosure.c:804 [Error: gclosure.c was not found in source tree] #12 0x00007fc19e5e1758 in signal_emit_unlocked_R (node=node@entry=0x564af65f8000, detail=detail@entry=0, instance=instance@entry=0x564af6ae39e0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffcfb5d27b0) at ../../../../gobject/gsignal.c:3673 [Error: gsignal.c was not found in source tree] #13 0x00007fc19e5ea4b5 in g_signal_emit_valist (instance=0x564af6ae39e0, signal_id=, detail=0, var_args=var_args@entry=0x7ffcfb5d2970) at ../../../../gobject/gsignal.c:3391 [Error: gsignal.c was not found in source tree] #14 0x00007fc19e5eaecf in g_signal_emit (instance=instance@entry=0x564af6ae39e0, signal_id=, detail=detail@entry=0) at ../../../../gobject/gsignal.c:3447 [Error: gsignal.c was not found in source tree] #15 0x00007fc1a1063d68 in gtk_tree_view_real_set_cursor (tree_view=tree_view@entry=0x564af6ae39e0, path=path@entry=0x564af6deb6b0, flags=flags@entry=(CLEAR_AND_SELECT | CURSOR_INVALID)) at ../../../../gtk/gtktreeview.c:13342 [Error: gtktreeview.c was not found in source tree] #16 0x00007fc1a10675b7 in gtk_tree_view_row_deleted (model=, path=, data=0x564af6ae39e0) at ../../../../gtk/gtktreeview.c:9396 [Error: gtktreeview.c was not found in source tree] #17 0x00007fc19e5cef9d in g_closure_invoke (closure=0x564af6aefdd0, return_value=0x0, n_param_values=2, param_values=0x7ffcfb5d2cf0, invocation_hint=0x7ffcfb5d2c70) at ../../../../gobject/gclosure.c:804 [Error: gclosure.c was not found in source tree] #18 0x00007fc19e5e1cde in signal_emit_unlocked_R (node=node@entry=0x564af6aef750, detail=detail@entry=0, instance=instance@entry=0x564af6ae0f00, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffcfb5d2cf0) at ../../../../gobject/gsignal.c:3635 [Error: gsignal.c was not found in source tree] #19 0x00007fc19e5ea4b5 in g_signal_emit_valist (instance=0x564af6ae0f00, signal_id=, detail=0, var_args=var_args@entry=0x7ffcfb5d2ec0) at ../../../../gobject/gsignal.c:3391 [Error: gsignal.c was not found in source tree] #20 0x00007fc19e5eaecf in g_signal_emit (instance=instance@entry=0x564af6ae0f00, signal_id=, detail=detail@entry=0) at ../../../../gobject/gsignal.c:3447 [Error: gsignal.c was not found in source tree] #21 0x00007fc1a1044882 in gtk_tree_model_row_deleted (tree_model=tree_model@entry=0x564af6ae0f00, path=path@entry=0x564af6d4bea0) at ../../../../gtk/gtktreemodel.c:1902 [Error: gtktreemodel.c was not found in source tree] #22 0x00007fc1a10552d9 in gtk_tree_store_remove (tree_store=0x564af6ae0f00, iter=iter@entry=0x7ffcfb5d30b0) at ../../../../gtk/gtktreestore.c:1230 [Error: gtktreestore.c was not found in source tree] #23 0x0000564af4217073 in sidebar_tree_disassociate_wrapper (self=self@entry=0x564af6ae39e0, wrapper=wrapper@entry=0x564af71f4730, only_children=0) at ./src/sidebar/Tree.vala:585 580: 581: if (only_children) 582: return; 583: 584: Gtk.TreeIter iter = wrapper.get_iter(); 585: store.remove(ref iter); 586: 587: if (selected_wrapper == wrapper) 588: selected_wrapper = null; 589: 590: Sidebar.Entry entry = wrapper.entry; #24 0x0000564af4217581 in sidebar_tree_disassociate_wrapper_and_signal (self=0x564af6ae39e0, wrapper=0x564af71f4730, only_children=0) at ./src/sidebar/Tree.vala:554 549: // A wrapper for disassociate_wrapper() (?!?) that fires the "selected-entry-removed" signal if 550: // condition exists 551: private void disassociate_wrapper_and_signal(EntryWrapper wrapper, bool only_children) { 552: bool selected = is_selected(wrapper.entry); 553: 554: disassociate_wrapper(wrapper, only_children); 555: 556: if (selected) { 557: Sidebar.SelectableEntry? selectable = wrapper.entry as Sidebar.SelectableEntry; 558: assert(selectable != null); 559: #25 0x0000564af4217750 in sidebar_tree_on_branch_entry_removed (entry=, branch=0x564af6a67dd0, self=0x564af6ae39e0) at ./src/sidebar/Tree.vala:646 641: private void on_branch_entry_removed(Sidebar.Branch branch, Sidebar.Entry entry) { 642: EntryWrapper? wrapper = get_wrapper(entry); 643: assert(wrapper != null); 644: assert(!(wrapper is RootWrapper)); 645: 646: disassociate_wrapper_and_signal(wrapper, false); 647: } 648: 649: private void on_branch_entry_moved(Sidebar.Branch branch, Sidebar.Entry entry) { 650: EntryWrapper? wrapper = get_wrapper(entry); 651: assert(wrapper != null); #26 _sidebar_tree_on_branch_entry_removed_sidebar_branch_entry_removed (_sender=0x564af6a67dd0, entry=, self=0x564af6ae39e0) at ./src/sidebar/Tree.vala:411 406: if (branch.is_startup_open_grouping()) 407: expand_to_entry(branch.get_root()); 408: } 409: 410: branch.entry_added.connect(on_branch_entry_added); 411: branch.entry_removed.connect(on_branch_entry_removed); 412: branch.entry_moved.connect(on_branch_entry_moved); 413: branch.entry_reparented.connect(on_branch_entry_reparented); 414: branch.children_reordered.connect(on_branch_children_reordered); 415: branch.show_branch.connect(on_show_branch); 416: #27 0x00007fc19e5cef9d in g_closure_invoke (closure=0x564af6b17110, return_value=0x0, n_param_values=2, param_values=0x7ffcfb5d3360, invocation_hint=0x7ffcfb5d32e0) at ../../../../gobject/gclosure.c:804 [Error: gclosure.c was not found in source tree] #28 0x00007fc19e5e1cde in signal_emit_unlocked_R (node=node@entry=0x564af69bee70, detail=detail@entry=0, instance=instance@entry=0x564af6a67dd0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffcfb5d3360) at ../../../../gobject/gsignal.c:3635 [Error: gsignal.c was not found in source tree] #29 0x00007fc19e5ea4b5 in g_signal_emit_valist (instance=0x564af6a67dd0, signal_id=, detail=0, var_args=var_args@entry=0x7ffcfb5d3530) at ../../../../gobject/gsignal.c:3391 [Error: gsignal.c was not found in source tree] #30 0x00007fc19e5eaecf in g_signal_emit (instance=instance@entry=0x564af6a67dd0, signal_id=, detail=detail@entry=0) at ../../../../gobject/gsignal.c:3447 [Error: gsignal.c was not found in source tree] #31 0x0000564af420c18d in sidebar_branch_prune (self=0x564af6a67dd0, entry=0x564af6a57db0) at ./src/sidebar/Branch.vala:280 #32 0x00007fc19e5cef9d in g_closure_invoke (closure=0x564af69c9380, return_value=0x0, n_param_values=2, param_values=0x7ffcfb5d3800, invocation_hint=0x7ffcfb5d3780) at ../../../../gobject/gclosure.c:804 [Error: gclosure.c was not found in source tree] #33 0x00007fc19e5e1cde in signal_emit_unlocked_R (node=node@entry=0x564af6a4a650, detail=detail@entry=0, instance=instance@entry=0x564af6a57db0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffcfb5d3800) at ../../../../gobject/gsignal.c:3635 [Error: gsignal.c was not found in source tree] #34 0x00007fc19e5ea4b5 in g_signal_emit_valist (instance=0x564af6a57db0, signal_id=, detail=0, var_args=var_args@entry=0x7ffcfb5d39d0) at ../../../../gobject/gsignal.c:3391 [Error: gsignal.c was not found in source tree] #35 0x00007fc19e5eaecf in g_signal_emit (instance=instance@entry=0x564af6a57db0, signal_id=, detail=detail@entry=0) at ../../../../gobject/gsignal.c:3447 [Error: gsignal.c was not found in source tree] #36 0x0000564af41d63ef in library_hideable_page_entry_set_visible (self=0x564af6a57db0, value=0) at ./src/library/Branch.vala:121 #37 0x0000564af41d8534 in library_import_queue_sidebar_entry_on_batch_added_or_removed (self=0x564af6a57db0) at ./src/library/ImportQueueSidebarEntry.vala:46 41: get_queue_page().batch_added.disconnect(on_batch_added_or_removed); 42: get_queue_page().batch_removed.disconnect(on_batch_added_or_removed); 43: } 44: 45: private void on_batch_added_or_removed() { 46: visible = (get_queue_page().get_batch_count() > 0); 47: } 48: 49: public void enqueue_and_schedule(BatchImport batch_import, bool allow_user_cancel) { 50: // want to display the branch before passing to the page because this might result in the 51: // page being created, and want it all hooked up in the tree prior to creating the page #38 0x00007fc19e5cef9d in g_closure_invoke (closure=0x564af7413710, return_value=0x0, n_param_values=2, param_values=0x7ffcfb5d3cb0, invocation_hint=0x7ffcfb5d3c30) at ../../../../gobject/gclosure.c:804 [Error: gclosure.c was not found in source tree] #39 0x00007fc19e5e1cde in signal_emit_unlocked_R (node=node@entry=0x564af6b1d640, detail=detail@entry=0, instance=instance@entry=0x564af740a780, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffcfb5d3cb0) at ../../../../gobject/gsignal.c:3635 [Error: gsignal.c was not found in source tree] #40 0x00007fc19e5ea4b5 in g_signal_emit_valist (instance=0x564af740a780, signal_id=, detail=0, var_args=var_args@entry=0x7ffcfb5d3e80) at ../../../../gobject/gsignal.c:3391 [Error: gsignal.c was not found in source tree] #41 0x00007fc19e5eaecf in g_signal_emit (instance=instance@entry=0x564af740a780, signal_id=, detail=detail@entry=0) at ../../../../gobject/gsignal.c:3447 [Error: gsignal.c was not found in source tree] #42 0x0000564af41d9ee5 in import_queue_page_on_import_complete (import_roll=, manifest=, batch_import=0x564af66ec190, self=0x564af740a780) at ./src/library/ImportQueuePage.vala:207 202: } 203: 204: update_stop_action(); 205: 206: // report the batch has been removed from the queue after everything else is set 207: batch_removed(batch_import); 208: } 209: 210: private void on_fatal_error(ImportResult result, string message) { 211: AppWindow.error_message(message); 212: } #43 _import_queue_page_on_import_complete_batch_import_import_complete (_sender=0x564af66ec190, manifest=, import_roll=, self=0x564af740a780) at ./src/library/ImportQueuePage.vala:86 81: 82: batch_import.starting.connect(on_starting); 83: batch_import.preparing.connect(on_preparing); 84: batch_import.progress.connect(on_progress); 85: batch_import.imported.connect(on_imported); 86: batch_import.import_complete.connect(on_import_complete); 87: batch_import.fatal_error.connect(on_fatal_error); 88: 89: if (!allow_user_cancel) 90: cancel_unallowed.add(batch_import); 91: #44 0x00007fc19e5cef9d in g_closure_invoke (closure=0x564af7416940, return_value=0x0, n_param_values=3, param_values=0x7ffcfb5d4170, invocation_hint=0x7ffcfb5d40f0) at ../../../../gobject/gclosure.c:804 [Error: gclosure.c was not found in source tree] #45 0x00007fc19e5e1cde in signal_emit_unlocked_R (node=node@entry=0x7fc13400a670, detail=detail@entry=0, instance=instance@entry=0x564af66ec190, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffcfb5d4170) at ../../../../gobject/gsignal.c:3635 [Error: gsignal.c was not found in source tree] #46 0x00007fc19e5ea4b5 in g_signal_emit_valist (instance=0x564af66ec190, signal_id=, detail=0, var_args=var_args@entry=0x7ffcfb5d4360) at ../../../../gobject/gsignal.c:3391 [Error: gsignal.c was not found in source tree] #47 0x00007fc19e5eaecf in g_signal_emit (instance=instance@entry=0x564af66ec190, signal_id=, detail=detail@entry=0) at ../../../../gobject/gsignal.c:3447 [Error: gsignal.c was not found in source tree] #48 0x0000564af42e08ad in batch_import_report_completed (self=self@entry=0x564af66ec190, where=where@entry=0x564af440a998 "completed preparing files, all outstanding imports completed") at ./src/BatchImport.vala:621 616: 617: // report completed to the reporter (called prior to the "import_complete" signal) 618: if (reporter != null) 619: reporter(manifest, import_roll); 620: 621: import_complete(manifest, import_roll); 622: } 623: 624: // This should be called whenever a file's import process is complete, successful or otherwise 625: private void file_import_complete() { 626: // mark this job as completed #49 0x0000564af42e0958 in batch_import_file_import_complete (self=self@entry=0x564af66ec190) at ./src/BatchImport.vala:634 629: assert(file_imports_completed <= file_imports_to_perform); 630: 631: // because notifications can come in after completions, have to watch if this is the 632: // last file 633: if (file_imports_to_perform != -1 && file_imports_completed == file_imports_to_perform) 634: report_completed("completed preparing files, all outstanding imports completed"); 635: } 636: 637: public void schedule() { 638: assert(scheduled == false); 639: scheduled = true; #50 0x0000564af42e970e in batch_import_on_import_files_cancelled (j=, self=0x564af66ec190) at ./src/BatchImport.vala:1086 1081: 1082: if (job.not_ready != null) { 1083: report_failure(new BatchImportResult(job.not_ready.job, job.not_ready.file, 1084: job.not_ready.file.get_path(), job.not_ready.file.get_path(), null, 1085: ImportResult.USER_ABORT)); 1086: file_import_complete(); 1087: } 1088: 1089: if (job.failed != null) { 1090: report_failure(job.failed); 1091: file_import_complete(); #51 _batch_import_on_import_files_cancelled_cancellation_callback (job=, self=0x564af66ec190) at ./src/BatchImport.vala:721 716: import_workers.enqueue(new ThumbnailWriterJob(this, ready_thumbnails.remove_at(0), 717: on_thumbnail_writer_completed, cancellable, on_thumbnail_writer_cancelled)); 718: } 719: 720: while(ready_files.size > 0 && import_workers.get_pending_job_count() < max_outstanding_import_jobs) { 721: import_workers.enqueue(new PreparedFileImportJob(this, ready_files.remove_at(0), 722: import_roll.import_id, on_import_files_completed, cancellable, 723: on_import_files_cancelled)); 724: } 725: } 726: #52 0x0000564af416f41a in background_job_on_notify_completion (self=0x564af73b8570) at ./src/threads/BackgroundJob.vala:198 193: if (is_cancelled()) { 194: if (cancellation != null) 195: cancellation(this); 196: } else { 197: if (callback != null) 198: callback(this); 199: } 200: 201: // drop the ref so this object can be freed ... must not touch "this" after this point 202: self = null; 203: #53 _background_job_on_notify_completion_gsource_func (self=0x564af73b8570) at BackgroundJob.c:940 935: } 936: 937: 938: static gboolean _background_job_on_notify_completion_gsource_func (gpointer self) { 939: gboolean result; 940: result = background_job_on_notify_completion ((BackgroundJob*) self); 941: #line 185 "/home/jens/Source/shotwell/src/threads/BackgroundJob.vala" 942: return result; 943: #line 944 "BackgroundJob.c" 944: } 945: #54 0x00007fc19e2f5e25 in g_main_dispatch (context=0x564af64a0e90) at ../../../../glib/gmain.c:3148 [Error: gmain.c was not found in source tree] #55 g_main_context_dispatch (context=context@entry=0x564af64a0e90) at ../../../../glib/gmain.c:3813 [Error: gmain.c was not found in source tree] #56 0x00007fc19e2f61f0 in g_main_context_iterate (context=context@entry=0x564af64a0e90, block=block@entry=0, dispatch=dispatch@entry=1, self=) at ../../../../glib/gmain.c:3886 [Error: gmain.c was not found in source tree] #57 0x00007fc19e2f627c in g_main_context_iteration (context=context@entry=0x564af64a0e90, may_block=may_block@entry=0) at ../../../../glib/gmain.c:3947 [Error: gmain.c was not found in source tree] #58 0x00007fc19e8b3cba in g_application_run (application=0x564af64a1390, argc=argc@entry=0, argv=argv@entry=0x0) at ../../../../gio/gapplication.c:2425 [Error: gapplication.c was not found in source tree] #59 0x0000564af4374e7a in application_start (self=0x564af69a35a0, argv=0x0, argv_length1=0) at ./src/Application.vala:182 177: 178: starting(); 179: 180: assert(AppWindow.get_instance() != null); 181: system_app.add_window(AppWindow.get_instance()); 182: system_app_run_retval = system_app.run(argv); 183: 184: if (!direct) { 185: system_app.command_line.disconnect(on_command_line); 186: } 187: #60 0x0000564af426b120 in library_exec (mounts=, mounts_length1=) at ./src/main.vala:196 191: run_system_pictures_import(); 192: } 193: 194: debug("%lf seconds to Gtk.main()", startup_timer.elapsed()); 195: 196: Application.get_instance().start(); 197: 198: DesktopIntegration.terminate(); 199: MetadataWriter.terminate(); 200: Tag.terminate(); 201: Event.terminate(); #61 0x0000564af426be28 in _vala_main (args=, args_length1=) at ./src/main.vala:427 422: 423: // since it's possible for a mount name to be passed that's not supported (and hence an empty 424: // mount list), or for nothing to be on the command-line at all, only go to direct editing if a 425: // filename is spec'd 426: if (is_string_empty(filename)) 427: library_exec(mounts); 428: else 429: editing_exec(filename); 430: 431: // terminate mode-inspecific modules 432: Resources.terminate(); #62 0x0000564af41648b0 in main (argc=, argv=) at ./src/main.vala:316 311: return entries; 312: } 313: 314: } 315: 316: void main(string[] args) { 317: // Call AppDirs init *before* calling Gtk.init_with_args, as it will strip the 318: // exec file from the array 319: AppDirs.init(args[0]); 320: 321: // This has to be done before the AppWindow is created in order to ensure the XMP