diff --git a/includes/media/DjVu.php b/includes/media/DjVu.php index 7da5a4c..1202c9a 100644 --- a/includes/media/DjVu.php +++ b/includes/media/DjVu.php @@ -180,9 +180,12 @@ class DjVuHandler extends ImageHandler { $srcPath = $image->getLocalRefPath(); # Use a subshell (brackets) to aggregate stderr from both pipeline commands # before redirecting it to the overall stdout. This works in both Linux and Windows XP. - $cmd = '(' . wfEscapeShellArg( $wgDjvuRenderer ) . " -format=ppm -page={$page}" . - " -size={$params['physicalWidth']}x{$params['physicalHeight']} " . - wfEscapeShellArg( $srcPath ); + $cmd = '(' . wfEscapeShellArg( + $wgDjvuRenderer, + "-format=ppm", + "-page={$page}", + "-size={$params['physicalWidth']}x{$params['physicalHeight']}", + $srcPath ); if ( $wgDjvuPostProcessor ) { $cmd .= " | {$wgDjvuPostProcessor}"; } diff --git a/includes/media/ImageHandler.php b/includes/media/ImageHandler.php index 4dd79a8..8a12e7e 100644 --- a/includes/media/ImageHandler.php +++ b/includes/media/ImageHandler.php @@ -93,6 +93,7 @@ abstract class ImageHandler extends MediaHandler { if ( !isset( $params['page'] ) ) { $params['page'] = 1; } else { + $params['page'] = intval( $params['page'] ); if ( $params['page'] > $image->pageCount() ) { $params['page'] = $image->pageCount(); }