diff --git a/res/res_musiconhold.c b/res/res_musiconhold.c
index db7f8525cf5b0d16e2e6422403e63b114dd7b392..7ed595557ddd9f22bcda03fde36ea4cf4140eed2 100644
--- a/res/res_musiconhold.c
+++ b/res/res_musiconhold.c
@@ -1150,7 +1150,9 @@ static void moh_rescan_files(void) {
 	i = ao2_iterator_init(mohclasses, 0);
 
 	while ((c = ao2_iterator_next(&i))) {
-		moh_scan_files(c);
+		if (!strcasecmp(c->mode, "files")) {
+			moh_scan_files(c);
+		}
 		ao2_ref(c, -1);
 	}