François Beausoleil <fbeausoleil@ftml.net> writes:
> from svn import core, fs, repos
>
> def repro(pool):
> repos.svn_repos_open('no-repos-named-that-way', pool)
>
> def main():
> print core.SVN_VER_MAJOR, core.SVN_VER_MINOR, core.SVN_VER_MICRO
> core.run_app(repro)
>
> if __name__ == '__main__':
> main()
>
>
> On my machine, the output looks like this:
> 1 1 1
> Traceback (most recent call last):
> File "C:\java\rsvn\recipe.py", line 11, in ?
> main()
> File "C:\java\rsvn\recipe.py", line 8, in main
> core.run_app(repro)
> File "C:\Python23\lib\svn\core.py", line 33, in run_app
> return apply(func, (pool,) + args, kw)
> File "C:\java\rsvn\recipe.py", line 4, in repro
> repos.svn_repos_open('no-repos-named-that-way', pool)
> SystemError: null argument to internal routine
Somethis is wrong with your bindings, then, because I get:
$ ./test.py
1 2 0
Traceback (most recent call last):
File "./test.py", line 12, in ?
main()
File "./test.py", line 9, in main
core.run_app(repro)
File "/usr/lib/python2.3/site-packages/svn/core.py", line 37, in run_app
return apply(func, (pool,) + args, kw)
File "./test.py", line 5, in repro
repos.svn_repos_open('no-repos-named-that-way', pool)
libsvn._core.SubversionException: ("Can't open file 'no-repos-named-that-way/format': No such file or directory", 2)
I designed those SubversionException errors such that you can grab
their apr_err member to get the numeric errorcode, too. So this
slightly tweaked version of you script:
#!/usr/bin/python
from svn import core, fs, repos
def repro(pool):
try:
repos.svn_repos_open('no-repos-named-that-way', pool)
except core.SubversionException, e:
print "ERROR (code=%d): %s" % (e.apr_err, str(e))
def main():
print core.SVN_VER_MAJOR, core.SVN_VER_MINOR, core.SVN_VER_MICRO
core.run_app(repro)
if __name__ == '__main__':
main()
produces this output:
$ ./test.py
1 2 0
ERROR (code=2): ("Can't open file 'no-repos-named-that-way/format': No such file or directory", 2)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Dec 8 19:27:18 2004