diff --git a/pd/src/x_interface.c b/pd/src/x_interface.c
index 140ab816feece016a9764c17be3b64c728aa526d..10d414dbb0269f3067dad4693d8e873ca85e8f31 100644
--- a/pd/src/x_interface.c
+++ b/pd/src/x_interface.c
@@ -658,7 +658,7 @@ void pdinfo_audio_listdevs(t_pdinfo *x, t_symbol *s, int argc, t_atom *argv)
             outdevlist, &noutdevs,
             &canmulti, &cancallback,
             MAXNDEV, DEVDESCSIZE);
-    t_atom at[4];
+    t_atom at[MAXNDEV];
     if (s == gensym("audio-multidev-support"))
     {
         SETFLOAT(at, canmulti);
@@ -739,7 +739,7 @@ void pdinfo_midi_listdevs(t_pdinfo *x, t_symbol *s, int argc, t_atom *argv)
     sys_get_midi_devs(indevlist, &nindevs,
             outdevlist, &noutdevs,
             MAXNDEV, DEVDESCSIZE);
-    t_atom at[4];
+    t_atom at[MAXNDEV];
     if (s == gensym("midi-indevlist"))
     {
         for (i = 0; i < nindevs; i++)