fix long package locations showing up as line item on typeset invoices, RT#10093
[freeside.git] / FS / FS / part_pkg.pm
index b267a62..a073cf2 100644 (file)
@@ -823,7 +823,7 @@ argument.
 
 sub add_freq {
   my( $self, $date, $freq ) = @_;
-  $freq = $self->freq if !defined($freq);
+  $freq = $self->freq unless $freq;
 
   #change this bit to use Date::Manip? CAREFUL with timezones (see
   # mailing list archive)
@@ -941,6 +941,8 @@ sub _part_pkg_link {
   qsearch({ table    => 'part_pkg_link',
             hashref  => { 'src_pkgpart' => $self->pkgpart,
                           'link_type'   => $type,
+                          #protection against infinite recursive links
+                          'dst_pkgpart' => { op=>'!=', value=> $self->pkgpart },
                         },
             order_by => "ORDER BY hidden",
          });