On Mon, Sep 28, 2009 at 04:30:06PM -0600, Jim Fehlig wrote:
Chris Lalancette wrote:
> While your patch would fix the problem, I'm not sure it's a good long-term
> solution. Other differences might come up in the future, and trying to worry
> about vshDeinit being re-entrant is probably not worth the effort. (Indeed, it
> looks like there were earlier attempts to avoid this, but things have changed
> since then, breaking the workaround). I think we should make it so that
> vshDeinit() does not try to re-enter itself. At the moment I don't have a
> patch, but I would look at either splitting vshError() into vshPrintError() and
> vshError(), or just doing a couple of fprintf()'s directly in vshDeinit() and
> not calling vshError() at all (with a comment explaining why).
>
I'm seeing this problem in 0.7.1 as well when explicitly providing a
connection URI, e.g. 'virsh -c ...'. I cooked up a patch based on your
latter suggestion but changed it to the attached after chatting with
danpb on IRC. This approach removes the doexit parameter and
vshDeinit() call from vshError() altogether, requiring callers of
vshError() to exit if they so desire.
Looks fine, better simplify this, applied,
thanks !
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit
http://xmlsoft.org/
daniel(a)veillard.com | Rpmfind RPM search engine
http://rpmfind.net/
http://veillard.com/ | virtualization library
http://libvirt.org/