Index: /branches/release-41/lib/MT/BackupRestore.pm
===================================================================
--- /branches/release-41/lib/MT/BackupRestore.pm (revision 2693)
+++ /branches/release-41/lib/MT/BackupRestore.pm (revision 2730)
@@ -67,4 +67,10 @@
         'ping_cat'      => {
             'order' => 520
+        },
+        # Comment should be backed up after TBPing
+        # because saving a comment ultimately triggers
+        # MT::TBPing::save.
+        'comment'        => {
+            'order' => 530
         },
         # Session, config and TheSchwartz packages are never backed up.
Index: /branches/release-41/t/61-to_from_xml.t
===================================================================
--- /branches/release-41/t/61-to_from_xml.t (revision 2695)
+++ /branches/release-41/t/61-to_from_xml.t (revision 2730)
@@ -157,11 +157,18 @@
                     isnt(undef, $parent, "parent object(" . $old->id . ") of $class pointed to by $col should not be undef");
                 } else {
-                    next if $col eq 'modified_on';
                     next if (
                         (defined($old->column($col)) && ($old->column($col) eq '')) &&
                         (!defined($obj->column($col)))
                     );
-                    next if ($name eq 'category' && ($col eq 'parent'));
-                    next if ($name eq 'folder' && ($col eq 'parent'));
+                    if ($name eq 'category' && ($col eq 'parent') && $old->parent) {
+                        my $parent = $objects->{'MT::Category#' . $old->parent};
+                        is( $obj->$col, $parent->id, 'Category parent restored');
+                        next;
+                    }
+                    if ($name eq 'folder' && ($col eq 'parent') && $old->parent) {
+                        my $parent = $objects->{'MT::Folder#' . $old->parent};
+                        is( $obj->$col, $parent->id, 'Folder parent restored');
+                        next;
+                    }
                     if ( ($name eq 'trackback') && ($col eq 'is_disabled') ) {
                         if ( defined($obj->is_disabled) && $obj->is_disabled
