X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FSQL%2FTranslator%2FParser%2FDBIx%2FClass.pm;h=5d146f809dc8ca1573e478f9ebbe4acd366d2e48;hb=f9b056586b78a08a423cedf34361539bb273d96d;hp=705d38056aef4b050a4aec02e1ac46f4142009f8;hpb=36e9e24fcb3018db6a085d18c9557c9aa6cc4ceb;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/lib/SQL/Translator/Parser/DBIx/Class.pm b/lib/SQL/Translator/Parser/DBIx/Class.pm index 705d380..5d146f8 100644 --- a/lib/SQL/Translator/Parser/DBIx/Class.pm +++ b/lib/SQL/Translator/Parser/DBIx/Class.pm @@ -15,6 +15,7 @@ $DEBUG = 0 unless defined $DEBUG; use Exporter; use SQL::Translator::Utils qw(debug normalize_name); use Carp::Clan qw/^SQL::Translator|^DBIx::Class/; +use Scalar::Util (); use base qw(Exporter); @@ -30,6 +31,10 @@ use base qw(Exporter); # We're working with DBIx::Class Schemas, not data streams. # ------------------------------------------------------------------- sub parse { + # this is a hack to prevent schema leaks due to a retarded SQLT implementation + # DO NOT REMOVE (until SQLT2 is out, the all of this will be rewritten anyway) + Scalar::Util::weaken ($_[1]); + my ($tr, $data) = @_; my $args = $tr->parser_args; my $dbicschema = $args->{'DBIx::Class::Schema'} || $args->{"DBIx::Schema"} ||$data;