diff --git a/perl/Gnome-Tomboy/lib/Tomboy/Directory.pm b/perl/Gnome-Tomboy/lib/Tomboy/Directory.pm
index 6972cd6ff5a79267a4e39e4fa0ef9d126f0ae186..b645f21b64f0802fa57f62f3bcbb19e085f20933 100644
--- a/perl/Gnome-Tomboy/lib/Tomboy/Directory.pm
+++ b/perl/Gnome-Tomboy/lib/Tomboy/Directory.pm
@@ -99,6 +99,7 @@ print __LINE__, " scan_dir: quick=[$quick]\n";
     $quick= 0;
   }
 
+  my @broken= ();
   my @res= ();
   my ($cnt_added, $cnt_updated, $cnt_unchanged, $cnt_dropped)= (0, 0, 0, 0);
   NOTE: while (my $e= readdir (DIR))
@@ -152,8 +153,10 @@ print __LINE__, " scan_dir: quick=[$quick]\n";
     {
       print "ATTN: parsing [$fp] returned undefined note!\n";
       print "caller: ", join (' ', caller()), "\n";
+      push (@broken, $fp);
       next NOTE;
     }
+
     # print "n: ", main::Dumper ($n);
 
     my %rec= map { $_ => $n->{$_} } @TB_note_attrs;
@@ -179,7 +182,14 @@ print __LINE__, " scan_dir: quick=[$quick]\n";
 
 # TODO: save statistics and/or file status for later processing
 
-  print "statistics: cnt_added=$cnt_added cnt_updated=$cnt_updated cnt_dropped=$cnt_dropped cnt_unchanged=$cnt_unchanged\n";
+  my $cnt_broken= @broken;
+  print "statistics: cnt_added=$cnt_added cnt_updated=$cnt_updated cnt_dropped=$cnt_dropped cnt_unchanged=$cnt_unchanged cnt_broken=$cnt_broken\n";
+
+  if ($cnt_broken > 0)
+  {
+    print "\nbroken files:\n* ", join ("\n *", @broken), "\n";
+  }
+
   (wantarray) ? @res : \@res;
 }
 
diff --git a/perl/Gnome-Tomboy/lib/Tomboy/TOC.pm b/perl/Gnome-Tomboy/lib/Tomboy/TOC.pm
index 99d0c90e071f0ef3a580c5d4ed7e0696528fa592..2eec690c68bd5554af7ec1784294f3f475386a7e 100644
--- a/perl/Gnome-Tomboy/lib/Tomboy/TOC.pm
+++ b/perl/Gnome-Tomboy/lib/Tomboy/TOC.pm
@@ -67,6 +67,7 @@ print main::Dumper ($self);
   my ($mode, $toc, $rows)= $self->load_toc();
 
   my $toc_data= $tb_d->scan_dir ($note_dir, $rows, $mode);
+  # print "toc_data=[$toc_data]\n";
   # TODO: if verbose or so print "toc_data: ", Dumper ($toc_data);
 
   $toc->{'data'}= $toc_data;