diff options
author | Justus Winter <4winter@informatik.uni-hamburg.de> | 2015-01-17 14:23:34 +0100 |
---|---|---|
committer | Justus Winter <4winter@informatik.uni-hamburg.de> | 2015-01-17 18:24:58 +0100 |
commit | 106287af864c01f20c12d1a0a78a2469a27adc03 (patch) | |
tree | b7699084674dd2d6d3229b2acb4904b1c950c74b /libfshelp | |
parent | c0c69366ce4717fb8c5db370ac42ab787782e28c (diff) |
libfshelp: improve error handling
* libfshelp/start-translator-long.c (fshelp_start_translator_long):
Once we have a task, go to `lose_task' so that we do not leave hosed
tasks around.
Diffstat (limited to 'libfshelp')
-rw-r--r-- | libfshelp/start-translator-long.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libfshelp/start-translator-long.c b/libfshelp/start-translator-long.c index 64a20bed..8b00e088 100644 --- a/libfshelp/start-translator-long.c +++ b/libfshelp/start-translator-long.c @@ -232,7 +232,7 @@ fshelp_start_translator_long (fshelp_open_fn_t underlying_open_fn, err = task_priority(task, 25, FALSE); if (err) - goto lose; + goto lose_task; /* Designate TASK as our child and set it's owner accordingly. */ proc = getproc (); @@ -240,11 +240,11 @@ fshelp_start_translator_long (fshelp_open_fn_t underlying_open_fn, err = proc_task2proc (proc, task, &childproc); mach_port_deallocate (mach_task_self (), proc); if (err) - goto lose; + goto lose_task; err = proc_setowner (childproc, owner_uid, owner_uid == (uid_t) -1); mach_port_deallocate (mach_task_self (), childproc); if (err) - goto lose; + goto lose_task; assert (ports_len > INIT_PORT_BOOTSTRAP); switch (ports_type) |