If we're going to reductio ad absurdum then OS's shouldn't let programs run if they interact with a device and don't explicitly handle exceptions for those devices. The OS is just a program and if it allows programs to crash it, isn't that the OS's fault?
Is there no such thing as a bug then? The program does what the code says so every "misbehavior" and crash is expected behavior.