Deprecated: Assigning the return value of new by reference is deprecated in /home/bluestat/public_html/source/index.php on line 477
queryFirst("SELECT * FROM " . TABLE_PREFIX . "attachment WHERE attachmentid = " . $input->inputClean('attachmentid', TYPE_UINT));
if (!$attachment)
{
$message->error(L_INVALID_ID);
}
$bug = $db->queryFirst("SELECT * FROM " . TABLE_PREFIX . "bug WHERE bugid = $attachment[bugid]");
if (!check_bug_permissions($bug))
{
$message->errorPermission();
}
if (!can_perform('cangetattach', $bug['product']))
{
$message->errorPermission();
}
ob_clean();
ob_end_clean();
// only allow certain images to be displayed inline because all other types are a potential XSS issue waiting to happen
if (in_array(strtolower(BSFunctions::fetch_extension($attachment['filename'])), array('jpg', 'jpeg', 'png', 'gif')))
{
header("Content-Disposition: inline; filename=$attachment[filename]");
header("Content-transfer-encoding: binary");
}
else
{
header("Content-Disposition: attachment; filename=$attachment[filename]");
}
header("Content-Length: " . strlen($attachment['attachment']));
header("Content-Type: $attachment[mimetype]");
print($attachment['attachment']);
?>