X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FSQL%2FAbstract%2FExtraClauses.pm;h=22817ce3125df3adb2e43c8fbcbc3150f46898bb;hb=9a20a32d6450e2f88fb51e61e83f1db3f7d8a159;hp=7bafdbad7546c05f7750e1567ffdb6dcf222dab2;hpb=c671eba6c2751d65437e394d7061038826a912e0;p=scpubgit%2FQ-Branch.git diff --git a/lib/SQL/Abstract/ExtraClauses.pm b/lib/SQL/Abstract/ExtraClauses.pm index 7bafdba..22817ce 100644 --- a/lib/SQL/Abstract/ExtraClauses.pm +++ b/lib/SQL/Abstract/ExtraClauses.pm @@ -62,9 +62,7 @@ sub apply_to { $sqla->clause_expanders( 'update.from' => $self->cb('_expand_select_clause_from'), - 'delete.using' => $self->cb(sub { - +(using => $_[0]->_expand_from_list(undef, $_[2])); - }), + 'delete.using' => $self->cb('_expand_from_list'), 'insert.rowvalues' => $self->cb(sub { +(from => $_[0]->expand_expr({ -values => $_[2] })); }), @@ -122,8 +120,8 @@ sub apply_to { } sub _expand_select { - my ($self, $orig, $before_setop) = (shift, shift, shift); - my $exp = $self->sqla->$orig(@_); + my ($self, $orig, $before_setop, @args) = @_; + my $exp = $self->sqla->$orig(@args); return $exp unless my $setop = (my $sel = $exp->{-select})->{setop}; if (my @keys = grep $sel->{$_}, @$before_setop) { my %inner; @inner{@keys} = delete @{$sel}{@keys};