summaryrefslogtreecommitdiff
path: root/LedgerSMB.pm
diff options
context:
space:
mode:
authoreinhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46>2008-07-11 00:42:05 +0000
committereinhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46>2008-07-11 00:42:05 +0000
commit26a243484e218eac4b5ddef5ac190af72a411af5 (patch)
tree058a6c8e0d340ef0a6c15daddbd608fb1db30b2f /LedgerSMB.pm
parent128c8757ba3b9c9304d2deacec079270cf8649d0 (diff)
Better logging and handling of db errors.
git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/trunk@2211 4979c152-3d1c-0410-bac9-87ea11338e46
Diffstat (limited to 'LedgerSMB.pm')
-rwxr-xr-xLedgerSMB.pm9
1 files changed, 7 insertions, 2 deletions
diff --git a/LedgerSMB.pm b/LedgerSMB.pm
index cf480bd4..67055b4f 100755
--- a/LedgerSMB.pm
+++ b/LedgerSMB.pm
@@ -575,9 +575,9 @@ sub call_procedure {
$query =~ s/\(\)/($argstr)/;
my $sth = $self->{dbh}->prepare($query);
if (scalar @call_args){
- $sth->execute(@call_args) || $self->error($self->{dbh}->errstr);
+ $sth->execute(@call_args) || $self->dberror($self->{dbh}->errstr);
} else {
- $sth->execute() || $self->error($self->{dbh}->errstr . ':' . $query);
+ $sth->execute() || $self->dberror($self->{dbh}->errstr . ':' . $query);
}
my @types = @{$sth->{TYPE}};
@@ -745,6 +745,11 @@ sub _db_init {
# Deprecated, only here for old code
sub dberror{
my $self = shift @_;
+ if ($self->{dbh}->state eq '42501'){
+ $_[0] = $self->{_locale}->text('Access Denied');
+ }
+ print STDERR "Logging SQL State ".$self->{dbh}->state.", error ".
+ $self->{dbh}->err . ", string " .$self->{dbh}->errstr . "\n";
$self->error(@_);
}