On 10/09/2012 04:45 PM, Eric Blake wrote: > On 10/09/2012 12:32 AM, Martin Kletzander wrote: >> On 10/09/2012 05:47 AM, Eric Blake wrote: >>> The code was reporting raw exit status without decoding it into >>> normal vs. signal exit. virCommandRun already does this, but >>> with a different error type, so all we have to do is recast >>> the error to the correct type. >>> Reported by li guang. >>> >>> * src/util/hooks.c (virHookCall): Simplify. >>> --- >>> >>> In response to: >>> https://www.redhat.com/archives/libvir-list/2012-October/msg00308.html >>> >>> src/util/hooks.c | 14 ++++++-------- >>> 1 file changed, 6 insertions(+), 8 deletions(-) >>> >> >> ACK, > > Pushed. > > Hmm, I wonder if we should add a new function, > virCommandSetErrorNumber(cmd, VIR_ERR_...); if it is not called, then > command failure continues to give INTERNAL_ERROR; but if it is called, > then failures of that particular command object are reported with that > error category. Then we wouldn't have to rewrap the error just to > change the category. > Interesting idea. I must say, I spent a while on checking where the error gets saved and if it bubbles up through the code properly, so maybe that would simplify it a little bit. OTOH, it would probably mean more code than less and, when somebody is familiar with current functions, it is already clear whether the caller makes differences between exit status and other errors. Martin -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list