return "Error: referenced file does not exist";
     }
 
+    /* Store filesize before encrypting the file */
+    /* Otherwise we would send the size of the encrypted file and the data of the unencrypted file */
+    /* This would break some browsers */
+    $size = filesize($p);
+
     $crypted = false;
     $crypt_key = '';
     if ($crypt == true && extension_loaded('sodium') == true) {
     }
 
     $hash = jirafeau_hash_file($file_hash_method, $p);
-    $size = filesize($p);
     $np = s2p($hash);
     $delete_link_code = jirafeau_gen_random(5);