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 769832 - Blocks on startup
Blocks on startup
Status: RESOLVED FIXED
Product: gnome-games
Classification: Core
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: GNOME Games maintainers
GNOME Games maintainers
Depends on:
Blocks:
 
 
Reported: 2016-08-13 12:35 UTC by Bastien Nocera
Modified: 2016-08-16 15:48 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
core: Add GameUriAdapter (1.21 KB, patch)
2016-08-16 13:20 UTC, Adrien Plazas
committed Details | Review
generic: Add GenericSyncGameUriAdapter (1.60 KB, patch)
2016-08-16 13:21 UTC, Adrien Plazas
committed Details | Review
tracker: Use GameUriAdapter in MimeTypeTrackerQuery (20.14 KB, patch)
2016-08-16 13:21 UTC, Adrien Plazas
committed Details | Review
mame: Add MameGameUriAdapter (4.52 KB, patch)
2016-08-16 13:21 UTC, Adrien Plazas
committed Details | Review
mame: Make MameGameInfo.get_supported_games() async (2.30 KB, patch)
2016-08-16 13:22 UTC, Adrien Plazas
committed Details | Review

Description Bastien Nocera 2016-08-13 12:35:54 UTC
The startup takes nearly 5 seconds on my machine, totem which also uses tracker takes less than 2 to startup.

Is there any blocking IO being done on startup?
Comment 1 Adrien Plazas 2016-08-16 06:22:27 UTC
The call to `MameGameInfo.get_supported_game()` in mame-plugin.vala is done synchronously and the first call is really slow.
Comment 2 Adrien Plazas 2016-08-16 13:20:48 UTC
Created attachment 333409 [details] [review]
core: Add GameUriAdapter

This will be used in a subsequent commit to allow asynchrous convertion
of a game file URI into a game object.
Comment 3 Adrien Plazas 2016-08-16 13:21:06 UTC
Created attachment 333410 [details] [review]
generic: Add GenericSyncGameUriAdapter

This will be used in a subsequent commit to allow asynchrous convertion
of a game file URI into a game object from a delegate.
Comment 4 Adrien Plazas 2016-08-16 13:21:25 UTC
Created attachment 333411 [details] [review]
tracker: Use GameUriAdapter in MimeTypeTrackerQuery

Construct MimeTypeTrackerQuery from a GameUriAdapter object rather than
a GameForUri callback.

This will be used in the next commit to asynchronously create game
objects in MIME type Tracker queries.
Comment 5 Adrien Plazas 2016-08-16 13:21:44 UTC
Created attachment 333412 [details] [review]
mame: Add MameGameUriAdapter

This will be used in the next commit to asynchronously create MAME
games.
Comment 6 Adrien Plazas 2016-08-16 13:22:05 UTC
Created attachment 333413 [details] [review]
mame: Make MameGameInfo.get_supported_games() async

This avoids to hang the UI when preparing the list of suported games.
Comment 7 Adrien Plazas 2016-08-16 15:47:47 UTC
Attachment 333409 [details] pushed as 37d6f40 - core: Add GameUriAdapter
Attachment 333410 [details] pushed as 61a3561 - generic: Add GenericSyncGameUriAdapter
Attachment 333411 [details] pushed as 17f1670 - tracker: Use GameUriAdapter in MimeTypeTrackerQuery
Attachment 333412 [details] pushed as a27ce8f - mame: Add MameGameUriAdapter
Attachment 333413 [details] pushed as 43df301 - mame: Make MameGameInfo.get_supported_games() async