diff --git a/editline/el.c b/editline/el.c
index 567d39d933fa5ecb691fea6497465084054f20c8..514316fbef19e0611ef6c138a44d23aac263bdd2 100755
--- a/editline/el.c
+++ b/editline/el.c
@@ -121,7 +121,8 @@ el_end(EditLine *el)
 	prompt_end(el);
 	sig_end(el);
 
-	el_free((ptr_t) el->el_prog);
+	if (el->el_prog)
+		el_free((ptr_t) el->el_prog);
 	el_free((ptr_t) el);
 }