Hmm, still no luck with it; I'm testing it with demo scopes and kill scope-A manually with kill <pid of scope>:
pawel@trusty ~/src/ubuntu/unity-scopes-api/scope_process_lifetime/build/demo $ ../scoperegistry/scoperegistry Runtime.ini
scoperegistry: unity::ResourceException: cannot open scope installation directory "/custom/usr/lib/x86_64-linux-gnu/unity/scopes": No such file or directory
scoperegistry: could not open OEM installation directory, ignoring OEM scopes
RegistryObject::ScopeProcess::exec(): Process for scope: "scope-A" started
RegistryObject::ScopeProcess::exec(): Process for scope: "scope-B" started
RegistryObject::ScopeProcess::exec(): Process for scope: "scope-C" started
RegistryObject::ScopeProcess::exec(): Process for scope: "scope-D" started
RegistryObject::ScopeProcess::exec(): Process for scope: "scope-N" started
RegistryObject::ScopeProcess::exec(): Process for scope: "scope-S" started
RegistryObject::ScopeProcess::on_process_death(): Process for scope: "scope-A" terminated
The death of scope-A is correctly detected, but I tried several times to query it after killing it, and getting this:
pawel@trusty ~/src/ubuntu/unity-scopes-api/scope_process_lifetime/build/demo $ ./client scope-A q
Scope metadata:
scope_id: scope-A display_name: scope-A.DisplayName description: scope-A.Description
art: scope-A.Art
icon: scope-A.Icon search_hint: scope-A.SearchHint
hot_key: scope-A.HotKey
query complete, status: error: unity::scopes::TimeoutException: Request timed out after 300 milliseconds
unity::scopes::TimeoutException: Request timed out after 300 milliseconds
And the scope is not started.
NB, I'm running it with the fix_env_var_split branc of libprocess-cpp.
Hmm, still no luck with it; I'm testing it with demo scopes and kill scope-A manually with kill <pid of scope>:
pawel@trusty ~/src/ubuntu/ unity-scopes- api/scope_ process_ lifetime/ build/demo $ ../scoperegistr y/scoperegistry Runtime.ini ResourceExcepti on: cannot open scope installation directory "/custom/ usr/lib/ x86_64- linux-gnu/ unity/scopes" : No such file or directory :ScopeProcess: :exec() : Process for scope: "scope-A" started :ScopeProcess: :exec() : Process for scope: "scope-B" started :ScopeProcess: :exec() : Process for scope: "scope-C" started :ScopeProcess: :exec() : Process for scope: "scope-D" started :ScopeProcess: :exec() : Process for scope: "scope-N" started :ScopeProcess: :exec() : Process for scope: "scope-S" started :ScopeProcess: :on_process_ death() : Process for scope: "scope-A" terminated
scoperegistry: unity::
scoperegistry: could not open OEM installation directory, ignoring OEM scopes
RegistryObject:
RegistryObject:
RegistryObject:
RegistryObject:
RegistryObject:
RegistryObject:
RegistryObject:
The death of scope-A is correctly detected, but I tried several times to query it after killing it, and getting this:
pawel@trusty ~/src/ubuntu/ unity-scopes- api/scope_ process_ lifetime/ build/demo $ ./client scope-A q
display_ name: scope-A.DisplayName
description: scope-A.Description
search_ hint: scope-A.SearchHint scopes: :TimeoutExcepti on: Request timed out after 300 milliseconds scopes: :TimeoutExcepti on: Request timed out after 300 milliseconds
Scope metadata:
scope_id: scope-A
art: scope-A.Art
icon: scope-A.Icon
hot_key: scope-A.HotKey
query complete, status: error: unity::
unity::
And the scope is not started.
NB, I'm running it with the fix_env_var_split branc of libprocess-cpp.