Is a segfault (array index out of bounds) always the programmer's mistake or could it be misuse from the user? 
Is segfault always the programmer's mistake?
java;c
Unless part of the specification is In such-and-such a circumstance, invoke undefined behaviour (C/C++) or trigger an IndexOutOfBoundsException, it is always the programmer's fault.The task of a program is to react adequately to all inputs, and that includes faulty, incomplete or even actively subversive input. In general, if the user provides unusable input, a program should give a determinate response, such as an error message or a repeat prompt, and not an implementation-defined reaction by the runtime system; such behaviour is usually not useful for the user and may cause security vulnerabilities.