diff --git a/main/pbx.c b/main/pbx.c
index d0ee12738916b4592b52034f3923a5d4e854967c..0cae9b83f89849ff591d34cd7ea34c5fb27ecfb9 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -7380,7 +7380,14 @@ static int ast_add_extension2_lockopt(struct ast_context *con,
 		}
 	}
 
-	exten_fluff = ext_fluff_count(extension);
+	if (priority == PRIORITY_HINT) {
+		/* Fluff in a hint is fine. This prevents the removal of dashes from dynamically
+		 * created hints during a reload. */
+		exten_fluff = 0;
+	} else {
+		exten_fluff = ext_fluff_count(extension);
+	}
+
 	callerid_fluff = callerid ? ext_fluff_count(callerid) : 0;
 
 	length = sizeof(struct ast_exten);