A patch for this bug from Sam has been committed to CVS: https://lists.webarch.co.uk/pipermail/mkdoc-commit/2006-June/001121.html
And regarding the creation of corrupted documents he said:
I never encountered the bug where cross-linked documents can't be edited, but I think I see how it could happen. I think it's likely that documents in this state will need to be fixed, either by hand or by a script. Depending on how many there are it might be easier to delete and recreate them.
This patch does seem to resolve the problem of links pointing to other sites but on one test server there is still the document corruption problem…
Document Corruption
This is the problem that occurs on one server after the new Link.pm has been installed.
The reproduce this problem:
Create a new document, say /new-test/
Add a link component with the URI set to /news/
Save the document and view it.
Go to edit it and there is a 500 internal server error, details of this follow…
The following is written to the apache error log:
SOFTWARE_ERROR $VAR1 = { 'SCRIPT_NAME' => '', 'MKD__CACHE_DIR' => '/usr/local/mkdoc-sites/xen-fc5.webarchitects.co.uk/cache', 'PATH_INFO' => '/new-test/.admin.content', 'REQUEST_METHOD' => 'GET', 'HTTP_ACCEPT' => 'text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5', 'SCRIPT_FILENAME' => '/usr/local/mkdoc-1-6/cgi/mkdoc.cgi', 'SERVER_SOFTWARE' => 'Apache/1.3.34 (Unix) mod_perl/1.29', 'MKD__PLUGIN_LIST' => '/usr/local/mkdoc-1-6/conf/users.conf', 'AUTH_TYPE' => 'Basic', 'QUERY_STRING' => '', 'REMOTE_PORT' => '37579', 'HTTP_USER_AGENT' => 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.13) Gecko/20060501 Fedora/1.7.13-1.1.fc5', 'SERVER_SIGNATURE' => '<ADDRESS>Apache/1.3.34 Server at users.xen-fc5.webarchitects.co.uk Port 8080</ADDRESS>', 'HTTP_CACHE_CONTROL' => 'max-age=0', 'HTTP_ACCEPT_LANGUAGE' => 'en', 'SITE_DIR' => '/usr/local/mkdoc-sites/xen-fc5.webarchitects.co.uk', 'PERL5LIB' => '/usr/local/mkdoc-1-6', 'PATH' => '/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mkdoc-1-6/tools:/usr/local/mkdoc-1-6/tools/cron', 'GATEWAY_INTERFACE' => 'CGI-Perl/1.1', 'MKDOC_DIR' => '/usr/local/mkdoc-1-6', 'DOCUMENT_ROOT' => '/usr/local/apache/htdocs', 'PATH_TRANSLATED' => '/usr/local/mkdoc-1-6/cgi/mkdoc.cgi/new-test/.admin.content', 'SERVER_NAME' => 'users.xen-fc5.webarchitects.co.uk', 'HTTP_REFERER' => 'http://users.xen-fc5.webarchitects.co.uk/new-test/', 'SERVER_ADMIN' => '[email protected]', 'PERL_SEND_HEADER' => 'On', 'HTTP_ACCEPT_ENCODING' => 'gzip,deflate', 'HTTP_X_FORWARDED_SERVER' => 'www.xen-fc5.webarchitects.co.uk', 'USER_DOMAIN' => 'http://users.xen-fc5.webarchitects.co.uk/', 'HTTP_ACCEPT_CHARSET' => 'UTF-8,*', 'REMOTE_USER' => 'chris', 'HTTP_MAX_FORWARDS' => '10', 'SERVER_PORT' => '8080', 'PUBLIC_DOMAIN' => 'http://www.xen-fc5.webarchitects.co.uk/', 'REMOTE_ADDR' => '192.168.1.12', 'SERVER_PROTOCOL' => 'HTTP/1.1', 'HTTP_X_FORWARDED_HOST' => 'users.xen-fc5.webarchitects.co.uk', 'MKD__TIDY' => '/usr/local/mkdoc-1-6/tools/whitelist.sh', 'HTTP_X_FORWARDED_FOR' => '192.168.1.2', 'REQUEST_URI' => '/new-test/.admin.content', 'SERVER_ADDR' => '192.168.1.12', 'HTTP_HOST' => 'users.xen-fc5.webarchitects.co.uk:8080', 'MOD_PERL' => 'mod_perl/1.29' }; [PETAL ERROR] [PETAL ERROR] Can't use string ("HASH(0xa950588)") as a HASH ref while "strict refs" in use at ../MKDoc/Util/Link Parser.pm line 454. . Debug info written in /tmp/petal_debug.1422.1149682698.pewtwxsjsp at /usr/lib/perl5/site_perl/5.8.8/Petal.pm line 473. . Debug info written in /tmp/petal_debug.1422.1149682698.mfypzjfgrb at /usr/lib/perl5/site_perl/5.8.8/Petal.pm line 473.
And the petal debug files are here: