On 12.07.2018 15:08, Daniel Shahaf wrote:
> Thanks for the patch; however, I don't think that's the correct fix.
To be honest I wasn't sure of that either but on the other hand I thought that
having initialized state won't hurt.
> Does the following patch fix the problem? Speaking of which, could you
> explain
> how to reproduce the problem?
As expected the patch does fix the issue, however the question about reproducer
is somewhat problematic. No matter what I try I cannot reproduce it when
invoking subversion manually from command line (ie with empty environment). The
problem manifests itself only when using automation script which involves
gradle->svnant->native subversion binary. I've added basic debug statements and
it appears following condition fails already:
if (!available_collection(non_interactive, pool))
return SVN_NO_ERROR;
which fails on first call:
service = secret_service_get_sync(SECRET_SERVICE_NONE, NULL, &gerror);
if (gerror || !service)
goto error_return;
with gerror->message being "Cannot autolaunch D-Bus without X11 $DISPLAY"
The main difference between invoking svn directly and through the script is
value of uninitialized "done". In script it is always non-zero while invoked
directly it's the opposite. If you manually force done to some random, non-zero
value the reproducer goes down to:
env -i svn co --no-auth-cache <url> --username user --password pass
--non-interactive
Regards
Jan