Currently haserl does not unlink uploaded files when an error occurs. E.g. when the uploaded file is larger than the specified limit. This is because in those cases die_with_message() is called which circumvents ll the cleanup operations including removing uploaded files. This can be easily fixed by using an exit handler. See my attached patch.