yacreader/YACReaderLibrary
Igor Kushnir f88af80379 Library: fix InfoComicsView crashes
InfoComicsView constructor is the only function that connects to
FlowView's currentCoverChanged signal. Neither of the slots connected to
this signal handles the argument value index==-1. So when FlowView emits
this signal with index==-1, YACReaderLibrary crashes. Returning early
from either ComicsView::updateInfoForIndex() or
InfoComicsView::setCurrentIndex() when index==-1 is not sufficient - the
crash happens in the other slot then. Let us skip emitting the signal in
FlowView if index==-1 rather than return early from both slots.

Steps to reproduce 1:
1. Launch YACReaderLibrary version that matches the version of the
default library database. Alternatively, select a compatible library
after starting the application.
2. If InfoComicsView is not active, switch to it.
3. (optional) Switch to another comics view out of InfoComicsView.
4. Quit YACReaderLibrary. The application crashes during exit - after
the "YACReaderLibrary closed with exit code : 0" message is printed.

Steps to reproduce 2:
1. Launch a YACReaderLibrary version newer than the version of the
default library database.
2. Click the "No" button in the "Update needed" dialog that pops up.
3. Change between comics views until InfoComicsView becomes active. If
this view was active at the beginning, switch through all the views to
get back to it. At this point YACReaderLibrary crashes.
2021-02-01 11:27:18 +02:00
..
comic_vine Fix object leaks in database code 2020-08-25 17:34:46 +02:00
db Add actions for setting folders as manga/normal 2021-01-16 18:31:48 +01:00
qml Library: fix InfoComicsView crashes 2021-02-01 11:27:18 +02:00
server Send manga field through the server 2021-01-16 14:24:14 +01:00
add_label_dialog.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
add_label_dialog.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
add_library_dialog.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
add_library_dialog.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
bundle_creator.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
bundle_creator.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
classic_comics_view.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
classic_comics_view.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
comic_files_manager.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
comic_files_manager.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
comic_flow_widget.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
comic_flow_widget.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
comic_flow.cpp Remove an unnecessary indirection in ComicFlow 2020-08-31 15:45:12 +02:00
comic_flow.h Remove an unnecessary indirection in ComicFlow 2020-08-31 15:45:12 +02:00
comics_remover.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
comics_remover.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
comics_view_transition.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
comics_view_transition.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
comics_view.cpp Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
comics_view.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
create_library_dialog.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
create_library_dialog.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
current_comic_view_helper.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
current_comic_view_helper.h Add .gitattributes rules for text and binary handling 2018-07-30 15:04:04 +02:00
db_helper.cpp Fix SQL update query for setting manga in all the comics in a folder 2021-01-17 14:05:14 +01:00
db_helper.h Add actions for setting folders as manga/normal 2021-01-16 18:31:48 +01:00
empty_container_info.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
empty_container_info.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
empty_folder_widget.cpp Fix code format errors due to changes in default coding style. (#150) 2020-07-24 21:17:49 +02:00
empty_folder_widget.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
empty_label_widget.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
empty_label_widget.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
empty_reading_list_widget.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
empty_reading_list_widget.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
empty_special_list.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
empty_special_list.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
export_comics_info_dialog.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
export_comics_info_dialog.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
export_library_dialog.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
export_library_dialog.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
files.qrc Normalize line endings 2018-08-07 11:09:02 +02:00
grid_comics_view.cpp Add setting to disable the continue reading banner in the grid view 2019-08-11 11:47:14 +02:00
grid_comics_view.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
icon2.ico yacreaderlibrary_ru.ts 2018-02-24 18:15:09 +00:00
icon3.ico yacreaderlibrary_ru.ts 2018-02-24 18:15:09 +00:00
icon.ico yacreaderlibrary_ru.ts 2018-02-24 18:15:09 +00:00
icon.rc yacreaderlibrary_ru.ts 2018-02-24 18:15:09 +00:00
images_osx.qrc A new trayicon is needed for macos 2019-09-20 13:41:26 +02:00
images_win.qrc Add better icons for the system tray in macos and windows 2019-09-20 10:07:20 +02:00
images.qrc Add what's new dialog 2021-01-21 21:39:22 +01:00
import_comics_info_dialog.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
import_comics_info_dialog.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
import_library_dialog.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
import_library_dialog.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
import_widget.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
import_widget.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
info_comics_view.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
info_comics_view.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
Info.plist Disable darkmode for now 2019-08-31 09:35:32 +02:00
library_creator.cpp Set all new imported comics and folders as manga if the parent folder is manga 2021-01-16 18:31:13 +01:00
library_creator.h Fix object leaks in database code 2020-08-25 17:34:46 +02:00
library_window.cpp Add what's new dialog 2021-01-21 21:39:22 +01:00
library_window.h Add what's new dialog 2021-01-21 21:39:22 +01:00
macostrayicon.svg Better macos tray icon 2019-09-20 16:38:11 +02:00
main.cpp Update comments 2021-01-28 19:56:35 +01:00
no_libraries_widget.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
no_libraries_widget.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
no_search_results_widget.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
no_search_results_widget.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
options_dialog.cpp Update the UI string about system tray support 2019-09-21 10:45:34 +02:00
options_dialog.h Fixed more merge problems 2019-09-19 22:49:00 +02:00
package_manager.cpp Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
package_manager.h Format code using clang-format 2019-05-30 19:46:37 +02:00
properties_dialog.cpp Add new manga field to the edit comic dialog 2021-01-16 14:26:07 +01:00
properties_dialog.h Add new manga field to the edit comic dialog 2021-01-16 14:26:07 +01:00
qml_osx.qrc Fix qml qrc files 2018-08-15 14:43:14 +02:00
qml_win.qrc Fix qml qrc files 2018-08-15 14:43:14 +02:00
qml.qrc Add current/next comic view to GridView. 2018-04-23 19:22:51 +02:00
rename_library_dialog.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
rename_library_dialog.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
server_config_dialog.cpp Explicitly include <sys/socket.h> 2019-11-26 19:03:34 +00:00
server_config_dialog.h Format code using clang-format 2019-05-30 19:46:37 +02:00
trayhandler.h Add support for minimize and start to tray. 2019-09-19 20:22:14 +02:00
trayhandler.mm Add support for minimize and start to tray. 2019-09-19 20:22:14 +02:00
trayicon_controller.cpp Fix restoring the window from a minimized state 2019-09-22 15:04:54 +02:00
trayicon_controller.h Pass a more specific instance of our main window 2019-09-21 12:11:39 +02:00
yacreader_comic_info_helper.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
yacreader_comic_info_helper.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
yacreader_comics_selection_helper.cpp Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
yacreader_comics_selection_helper.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
yacreader_comics_views_manager.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
yacreader_comics_views_manager.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
yacreader_folders_view.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
yacreader_folders_view.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
yacreader_history_controller.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
yacreader_history_controller.h Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
yacreader_libraries.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
yacreader_libraries.h Format code using clang-format 2019-05-30 19:46:37 +02:00
yacreader_local_server.cpp Use auto to avoid duplicating the type name 2019-06-01 16:04:48 +02:00
yacreader_local_server.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
yacreader_main_toolbar.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
yacreader_main_toolbar.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
yacreader_navigation_controller.cpp Use nullptr instead of 0 2019-06-01 16:04:48 +02:00
yacreader_navigation_controller.h Format code using clang-format 2019-05-30 19:46:37 +02:00
yacreader_reading_lists_view.cpp Format code using clang-format 2019-05-30 19:46:37 +02:00
yacreader_reading_lists_view.h Annotate overridden methods 2019-06-01 16:04:48 +02:00
yacreaderlibrary_de.ts Update translations. 2018-06-16 08:28:50 +02:00
yacreaderlibrary_es.ts Update translations. 2018-06-16 08:28:50 +02:00
yacreaderlibrary_fr.ts Update translations. 2018-06-16 08:28:50 +02:00
yacreaderlibrary_nl.ts Updated Dutch translation 2020-10-01 11:56:35 +02:00
yacreaderlibrary_pt.ts Update translations. 2018-06-16 08:28:50 +02:00
yacreaderlibrary_ru.ts Update yacreaderlibrary_ru.ts 2018-08-25 07:49:51 +03:00
yacreaderlibrary_source.ts Update translations. 2018-06-16 08:28:50 +02:00
yacreaderlibrary_tr.ts Update translations. 2018-06-16 08:28:50 +02:00
YACReaderLibrary.icns yacreaderlibrary_ru.ts 2018-02-24 18:15:09 +00:00
YACReaderLibrary.pro Enable SVG explicitly 2021-01-22 10:48:13 +01:00