summaryrefslogtreecommitdiff
path: root/doc/bugs/mercurial_fail_to_add.mdwn
blob: 3bbf4e5fd5ffe2e5c9f68c2792b2b26c88c56e94 (plain)

I don't know what's wrong but I can't add a file with the mercurial backend (the file is created but not added).

Here is a patch that's seems to work, although I'm not quite sure what's wrong with current code :

hbernard@tactic:/usr/share/perl5/IkiWiki/Rcs$ diff mercurial.pm /home/hbernard/mercurial.pm -Nau
--- mercurial.pm        2007-03-24 16:14:35.000000000 +0100
+++ /home/hbernard/mercurial.pm 2007-04-19 19:05:47.000000000 +0200
@@ -95,7 +95,7 @@
 sub rcs_add ($) {
        my ($file) = @_;
 
-       my @cmdline = ("hg", "-q", "-R", "$config{srcdir}", "add", "$file");
+       my @cmdline = ("hg", "-q", "-R", "$config{srcdir}", "add", "$config{srcdir}/$file");
        if (system(@cmdline) != 0) {
                warn "'@cmdline' failed: $!";
       }

My srcdir path has some symbolics links and hidden directorys... maybe that's it ?

Interesting, the mercurial test suite shows the add without the path working ok. OTOH, it also continues to work if I apply your patch, so I guess it's safe enough. It would be good to know why it's failing w/o the path in your case. --[[Joey]]

I didn't have time to investigate, but here is the path :

 /home/hbernard/.hiddendatas/hg/ikigtd/

but ~/.hiddendatas is itself a symbolic to .dotfiles/.hiddendatas (this seems weird I know ;)) As I was trying to resolve this, the interesting thing is that keying directly in a terminal the same command was working... I suspect something with the symbolic link... but didn't investigate further. I will setup a test wiki with symlink in the path to check this.

As I applied the patch, I'm moving this out of the patchqueue to bugs and marking it [[done]]. --[[Joey]]