Package: libsvn-core-perl
Version: 1.2.3dfsg1-3
Severity: important

Heya,

I had fun debugging a weird work problem today. The code, old version:

  my $tempdir = tempdir ( "osfconf.XXXXXX", DIR => "/tmp/", CLEANUP => 1);
  my $co_tmpdir = tempdir("svn-co.XXXXXX", DIR => $tempdir, CLEANUP => 1);

  $ctx->checkout($base_repo_URI, $co_tmpdir, 'HEAD', 0);
  #SVN SUCKS SUCKS SUCKS SUCKS, it won't even diff if the timestamps don't 
differ:
  sleep 1;
  $ctx->merge($base_repo_URI, 'HEAD', $base_repo_URI, $revision, $co_tmpdir, 1, 
1, 0, 0);
  my $answer = $ctx->commit($co_tmpdir, 0);

This is part of a CGI, so let's try to use it:
[Sat Mar 18 16:38:26 2006] [error] [client 192.168.1.123] Permission denied: 
Could not save file: Can't open 'tmp': Permission denied at 
/usr/share/osf/OSF/Config.pm line 481, referer: 
http://192.168.1.214/config_restore.cgi
Hrmpfl. After a few weird tries, I found this, working solution:

  my $tempdir = tempdir ( "osfconf.XXXXXX", DIR => "/tmp/", CLEANUP => 1);
  my $co_tmpdir = tempdir("svn-co.XXXXXX", DIR => $tempdir, CLEANUP => 1);

  $ctx->checkout($base_repo_URI, $co_tmpdir, 'HEAD', 0);
  #SVN SUCKS SUCKS SUCKS SUCKS, it won't even diff if the timestamps don't 
differ:
  sleep 1;
  chdir $tempdir;
  $ctx->merge($base_repo_URI, 'HEAD', $base_repo_URI, $revision, $co_tmpdir, 1, 
1, 0, 0);
  my $answer = $ctx->commit($co_tmpdir, 0);

I guess it tries to use . for some tempfile when doing the merge. Which is, err,
not a good idea. The very helpful error message (absolute path would be nice) 
gives
extra-frustration points.

Marc


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to