Strange reset when reading strings from PROGMEM

i've put the StrBuffer[40] and still doesn't work

but this works

  for(byte j =0; j<20;j++){
    strcpy_P(StrBuffer, (char*)pgm_read_word(&(StarList[j])));
    Serial.println(StrBuffer);
    delay(1000);
}