Subject: | Win32 Path Names |
Date: | Fri, 13 Feb 2015 02:42:27 +0000 (UTC) |
To: | "bug-HTML-Mason [...] rt.cpan.org" <bug-HTML-Mason [...] rt.cpan.org> |
From: | Steven Kneizys <skneizys [...] yahoo.com> |
Greetings,
I have RT 4.2.9 somewhat running at this moment on Windows 7! I had a bunch of little obstacles, one was in HTML::Mason::Interp with path names. On Windows the ':' char is illegal in a path except after a drive letter, but RT somehow was feeding that in as part of the process of creating a mason data obj file.
It wanted to create:
...\rt4\var\mason_data\obj\3501187538\plugin-RT::Extension::QuickUpdate
So I hacked it up to create this instead:
...\rt4\var\mason_data\obj\3501187538\plugin-RT!!Extension!!QuickUpdate
About line 482 I did this Q&D change, this being my first Mason project, I don't know if this is an appropriate solution or if it should be cleaned up up/down stream etc.:
sub comp_id_to_objfile { my ($self, $comp_id) = @_; $comp_id =~ s/\:/\!/g if ($^O =~ /MSWin32/i); #SPK 2015-01-12 return File::Spec->catfile
( $self->object_dir, $self->compiler->object_id, ( split /\//, $comp_id ), ) . $self->object_file_extension;}
Thanks!
Steve...