From: Tara L Andrews Date: Tue, 13 Aug 2013 19:02:00 +0000 (+0200) Subject: Workaround for Graph::Reader::Dot not accepting Unicode barewords. Fixes #19 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=174e78dffe4fad609f755e573f3247a37a7fae40;p=scpubgit%2Fstemmaweb.git Workaround for Graph::Reader::Dot not accepting Unicode barewords. Fixes #19 --- diff --git a/lib/stemmaweb/Controller/Root.pm b/lib/stemmaweb/Controller/Root.pm index 30cc644..f2488ad 100644 --- a/lib/stemmaweb/Controller/Root.pm +++ b/lib/stemmaweb/Controller/Root.pm @@ -351,6 +351,11 @@ sub stemma :Local :Args(2) { if( $c->req->method eq 'POST' ) { if( $ok eq 'full' ) { my $dot = $c->request->body_params->{'dot'}; + # Graph::Reader::Dot does not handle bare unicode. We get around this + # by wrapping all words in double quotes, but then we have to undo it + # for the initial 'digraph stemma' statement. Horrible hack. + $dot =~ s/\b(\w+)\b/"$1"/g; + $dot =~ s/"(digraph|stemma)"/$1/g; try { if( $stemmaid eq 'n' ) { # We are adding a new stemma.