Prevent compilation errors from complex C4 import/export.
authorJoe Atzberger <joe.atzberger@liblime.com>
Thu, 14 Aug 2008 18:52:39 +0000 (13:52 -0500)
committerGalen Charlton <galen.charlton@liblime.com>
Mon, 18 Aug 2008 12:15:39 +0000 (07:15 -0500)
SIP code uses UNIVERSAL modules that do not tolerate the circular deps in
C4, specifically, in Auth.pm.  Changing the order so that UNIVERSAL follows
the other imports is important to avoiding failures like:
  perl -w -e 'use UNIVERSAL qw(can); use C4::Auth;'
    "MarkIssueReturned" is not exported by the C4::Circulation module

This patch should resolve the problem earlier seen with Shelves too.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
C4/SIP/Sip/MsgType.pm

index bf390c7..44a0034 100644 (file)
@@ -10,7 +10,6 @@ use strict;
 use warnings;
 use Exporter;
 use Sys::Syslog qw(syslog);
-use UNIVERSAL qw(can);
 
 use Sip qw(:all);
 use Sip::Constants qw(:all);
@@ -20,6 +19,8 @@ use Data::Dumper;
 use CGI;
 use C4::Auth qw(&check_api_auth);
 
+use UNIVERSAL qw(can); # make sure this is *after* C4 modules.
+
 use vars qw(@ISA $VERSION @EXPORT_OK);
 
 BEGIN {