Stefan Sperling wrote on Mon, Nov 05, 2012 at 12:37:19 +0100:
> On Mon, Nov 05, 2012 at 02:42:29PM +0530, Prabhu Gnana Sundar wrote:
> > I guess, this also solves the layer violation problem. Correct me if
> > am wrong.
> 
> Daniel suggested to use svn_error_quick_wrap() which you aren't using.
> So I doubt you did what he had in mind. Honestly, I don't really understand
> what he wants you to do either. Daniel, can you take the time to explain
> a bit more clearly what you mean, please?
> 

If you wrap notify->err as follows:

    svn_error_quick_wrap(notify->err,
                         _("Error verifying revision %ld:")));

then the output would be:

    * Verified revision 2.
    svnadmin: E160004: Error verifying revision %ld
    svnadmin: E160004: Missing node-id in node-rev at r3 (offset 787)

Now, there are two details I haven't specified:

- Passing the argument of the %ld printf format string.  I'm pretty
  sure svn_error_quick_wrap doesn't take variadic printf arguments..

- Whether the wrapping happens in the caller or callee of the
  notify_func callback.  Not hard, just need to ensure each error
  is cleared exactly once.

I can argue either for this output or for the "* Error verified revision %ld"
output Prabhu came up with; not sure yet which I prefer.

Makes sense?

Reply via email to