diff --git a/backup/restorelib.php b/backup/restorelib.php index cd9c49c7534..972f36bc8f9 100644 --- a/backup/restorelib.php +++ b/backup/restorelib.php @@ -8383,18 +8383,20 @@ define('RESTORE_GROUPS_GROUPINGS', 3); insert_record('role_capabilities', $roleinfo); } } - /// Now, restore role nameincourse - $newrole = backup_getid($restore->backup_unique_code, 'role', $oldroleid); /// Look for target role - $coursecontext = get_context_instance(CONTEXT_COURSE, $restore->course_id); /// Look for target context - if (!empty($newrole->new_id) && !empty($coursecontext)) { - /// Check the role hasn't any custom name in context - if (!record_exists('role_names', 'roleid', $newrole->new_id, 'contextid', $coursecontext->id)) { - $rolename = new object(); - $rolename->roleid = $newrole->new_id; - $rolename->contextid = $coursecontext->id; - $rolename->name = addslashes($roledata->nameincourse); + /// Now, restore role nameincourse (only if the role had nameincourse in backup) + if (!empty($roledata->nameincourse)) { + $newrole = backup_getid($restore->backup_unique_code, 'role', $oldroleid); /// Look for target role + $coursecontext = get_context_instance(CONTEXT_COURSE, $restore->course_id); /// Look for target context + if (!empty($newrole->new_id) && !empty($coursecontext)) { + /// Check the role hasn't any custom name in context + if (!record_exists('role_names', 'roleid', $newrole->new_id, 'contextid', $coursecontext->id)) { + $rolename = new object(); + $rolename->roleid = $newrole->new_id; + $rolename->contextid = $coursecontext->id; + $rolename->name = addslashes($roledata->nameincourse); - insert_record('role_names', $rolename); + insert_record('role_names', $rolename); + } } } }