Index: restorelib.php
===================================================================
RCS file: /cvsroot/moodle/moodle/backup/restorelib.php,v
retrieving revision 1.283.2.52
diff -u -r1.283.2.52 restorelib.php
--- restorelib.php	6 Aug 2008 16:41:48 -0000	1.283.2.52
+++ restorelib.php	21 Aug 2008 11:19:23 -0000
@@ -4405,6 +4405,18 @@
                 } else {
                     $status = false;
                }
+               // MDL-14326 remove empty course modules instance's (credit goes to John T. Macklin from Remote Learner)
+               $course_modules_inst_zero = get_records_sql("SELECT id, course, instance
+                                           FROM {$CFG->prefix}course_modules
+                                           WHERE id = '$cm_module->new_id' AND
+                                                 instance = '0'");
+                                                 
+                    if($course_modules_inst_zero){ // Clean up the invalid instances
+                         foreach($course_modules_inst_zero as $course_modules_inst){
+                             delete_records('course_modules', 'id',$course_modules_inst->id);
+                         }
+                    }
+
             }
         /// Finally, calculate modinfo cache.
             rebuild_course_cache($restore->course_id);
