This does not seem to work.
The GD:: namespace is not copying over...
The Hackmare::GD namespace is getting pointed to the GD::Image namespace when the GD::Image copy takes place.
I tried both:
*Hackmare::GD::Image::new = \&GD::Image::new;
and
*Hackmare::GD::Image:: = GD::Image::;
.
Here is the debug output if it helps at all...
*Hackmare::GD::Image::new = \&GD::Image::new;
*GD::Image:: = *SVG::GD::Image::;
package SVG::GD::Image;
#constructor
sub SVG::GD::Image::new {
my $class = shift;
my $self = {};
bless $self, $class;
$self->{_GD_} = new Hackmare::GD::Image(@_)
|| print STDERR "Quitting. Unable to construct new GD::Image
object using GD: $!\n";
....stuff....
return $self
}
Here is the debugging info: Notice the infinite loop for the constructor:
main::(test/18-loadsvggd.pl:6): print "Creating an SVG::GD Image\n";
DB<0>
Creating an SVG::GD Image
main::(test/18-loadsvggd.pl:7): my ($width,$height) = (200,200);
DB<0>
main::(test/18-loadsvggd.pl:8): my $dwg = new GD::Image($width,$height
+);
DB<0> s
SVG::GD::Image::new(SVG/GD.pm:79): my $class = shift;
DB<0> s
SVG::GD::Image::new(SVG/GD.pm:80): my $self = {};
DB<0>
SVG::GD::Image::new(SVG/GD.pm:81): bless $self, $class;
DB<0>
SVG::GD::Image::new(SVG/GD.pm:82): $self->{_GD_} = new Hackma
+re::GD::Image(@_)
SVG::GD::Image::new(SVG/GD.pm:83): || print STDERR "
+Quitting. Unable to construct new GD::Image
SVG::GD::Image::new(SVG/GD.pm:84): object using GD: $!\n"
+;
DB<0> s
GD::Image::new(SVG/GD.pm:79): my $class = shift;
DB<0>
GD::Image::new(SVG/GD.pm:80): my $self = {};
DB<0>
GD::Image::new(SVG/GD.pm:81): bless $self, $class;
DB<0>
GD::Image::new(SVG/GD.pm:82): $self->{_GD_} = new Hackmare::
+GD::Image(@_)
GD::Image::new(SVG/GD.pm:83): || print STDERR "Quitt
+ing. Unable to construct new GD::Image
GD::Image::new(SVG/GD.pm:84): object using GD: $!\n";
DB<0>
GD::Image::new(SVG/GD.pm:79): my $class = shift;
DB<0>
GD::Image::new(SVG/GD.pm:80): my $self = {};
DB<0>
GD::Image::new(SVG/GD.pm:81): bless $self, $class;
Is anything glaringly obvious here?
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.