X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=dbsrgits%2FDBIx-Class.git;a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FStorage%2FDBI%2FSybase%2FASE.pm;h=fde0b730187a7643c8f940d57de9675c02a97622;hp=5282b7f9bd39763522e577b749609840ba953f79;hb=e2741c7fd695dca054614f297b01d351a45bbf38;hpb=82c5f9168e30bc9dc7b681058298bb342582c5ec diff --git a/lib/DBIx/Class/Storage/DBI/Sybase/ASE.pm b/lib/DBIx/Class/Storage/DBI/Sybase/ASE.pm index 5282b7f..fde0b73 100644 --- a/lib/DBIx/Class/Storage/DBI/Sybase/ASE.pm +++ b/lib/DBIx/Class/Storage/DBI/Sybase/ASE.pm @@ -11,9 +11,11 @@ use base qw/ use mro 'c3'; use DBIx::Class::Carp; use Scalar::Util qw/blessed weaken/; -use Try::Tiny; use Context::Preserve 'preserve_context'; -use DBIx::Class::_Util qw( sigwarn_silencer dbic_internal_try dump_value scope_guard set_subname ); +use DBIx::Class::_Util qw( + sigwarn_silencer dbic_internal_try dbic_internal_catch + dump_value scope_guard set_subname +); use namespace::clean; __PACKAGE__->sql_limit_dialect ('GenericSubQ'); @@ -653,8 +655,9 @@ sub _insert_bulk { $guard->commit; $bulk->_query_end($sql); - } catch { - $exception = shift; + } + dbic_internal_catch { + $exception = $_; }; DBD::Sybase::set_cslib_cb($orig_cslib_cb); @@ -731,11 +734,14 @@ sub _remove_blob_cols_array { sub _update_blobs { my ($self, $source, $blob_cols, $where) = @_; - my @primary_cols = dbic_internal_try - { $source->_pri_cols_or_die } - catch { + my @primary_cols = + dbic_internal_try { + $source->_pri_cols_or_die + } + dbic_internal_catch { $self->throw_exception("Cannot update TEXT/IMAGE column(s): $_") - }; + } + ; my @pks_to_update; if ( @@ -766,7 +772,7 @@ sub _insert_blobs { my @primary_cols = dbic_internal_try { $source->_pri_cols_or_die } - catch { + dbic_internal_catch { $self->throw_exception("Cannot update TEXT/IMAGE column(s): $_") }; @@ -819,7 +825,7 @@ sub _insert_blobs { $sth->func('ct_finish_send') or die $sth->errstr; } - catch { + dbic_internal_catch { if ($self->_using_freetds) { $self->throw_exception ( "TEXT/IMAGE operation failed, probably because you are using FreeTDS: $_"