diff --git a/pd/src/d_delay.c b/pd/src/d_delay.c
index 0a7d2d2c8e1bc54476b3ed41351a3721aaccab3e..b43ba84277d60d0a446b5ee5cec1074708884978 100644
--- a/pd/src/d_delay.c
+++ b/pd/src/d_delay.c
@@ -313,8 +313,9 @@ static void sigvd_dsp(t_sigvd *x, t_signal **sp)
 
 static void sigvd_setup(void)
 {
-    sigvd_class = class_new(gensym("vd~"), (t_newmethod)sigvd_new, 0,
+    sigvd_class = class_new(gensym("delread4~"), (t_newmethod)sigvd_new, 0,
         sizeof(t_sigvd), 0, A_DEFSYM, 0);
+    class_addcreator((t_newmethod)sigvd_new, gensym("vd~"), A_DEFSYM, 0);
     class_addmethod(sigvd_class, (t_method)sigvd_dsp, gensym("dsp"), A_CANT, 0);
     CLASS_MAINSIGNALIN(sigvd_class, t_sigvd, x_f);
 }