Matt reported that PHP crashs using imagecreatefromjpeg() - that's true and it took me a lot of time to find the error - but not only the Canon PowerShot S70, also the Canon PowerShot A400 lets PHP (5.1.2) crash, without any chance to catch it!
So I exclude all Canon PowerShot images with the following check:
function check_canonpowershot($filename)
{
if (strpos(file_get_contents($filename), 'Canon PowerShot') !== false)
{
return true;
}
return false;
}