summaryrefslogtreecommitdiff
path: root/includes/media/JpegMetadataExtractor.php
diff options
context:
space:
mode:
Diffstat (limited to 'includes/media/JpegMetadataExtractor.php')
-rw-r--r--includes/media/JpegMetadataExtractor.php24
1 files changed, 12 insertions, 12 deletions
diff --git a/includes/media/JpegMetadataExtractor.php b/includes/media/JpegMetadataExtractor.php
index c7030eba..8c5b46bb 100644
--- a/includes/media/JpegMetadataExtractor.php
+++ b/includes/media/JpegMetadataExtractor.php
@@ -30,8 +30,8 @@
* @ingroup Media
*/
class JpegMetadataExtractor {
-
const MAX_JPEG_SEGMENTS = 200;
+
// the max segment is a sanity check.
// A jpeg file should never even remotely have
// that many segments. Your average file has about 10.
@@ -43,9 +43,9 @@ class JpegMetadataExtractor {
* but gis doesn't support having multiple app1 segments
* and those can't extract xmp on files containing both exif and xmp data
*
- * @param string $filename name of jpeg file
- * @return Array of interesting segments.
- * @throws MWException if given invalid file.
+ * @param string $filename Name of jpeg file
+ * @return array Array of interesting segments.
+ * @throws MWException If given invalid file.
*/
static function segmentSplitter( $filename ) {
$showXMP = function_exists( 'xml_parser_create_ns' );
@@ -83,7 +83,8 @@ class JpegMetadataExtractor {
throw new MWException( 'Too many jpeg segments. Aborting' );
}
if ( $buffer !== "\xFF" ) {
- throw new MWException( "Error reading jpeg file marker. Expected 0xFF but got " . bin2hex( $buffer ) );
+ throw new MWException( "Error reading jpeg file marker. " .
+ "Expected 0xFF but got " . bin2hex( $buffer ) );
}
$buffer = fread( $fh, 1 );
@@ -113,7 +114,6 @@ class JpegMetadataExtractor {
} else {
wfDebug( __METHOD__ . " Ignoring JPEG comment as is garbage.\n" );
}
-
} elseif ( $buffer === "\xE1" ) {
// APP1 section (Exif, XMP, and XMP extended)
// only extract if XMP is enabled.
@@ -160,7 +160,6 @@ class JpegMetadataExtractor {
}
fseek( $fh, $size['int'] - 2, SEEK_CUR );
}
-
}
// shouldn't get here.
throw new MWException( "Reached end of jpeg file unexpectedly" );
@@ -168,9 +167,9 @@ class JpegMetadataExtractor {
/**
* Helper function for jpegSegmentSplitter
- * @param &$fh FileHandle for jpeg file
+ * @param resource &$fh File handle for JPEG file
* @throws MWException
- * @return string data content of segment.
+ * @return string Data content of segment.
*/
private static function jpegExtractMarker( &$fh ) {
$size = wfUnpack( "nint", fread( $fh, 2 ), 2 );
@@ -181,6 +180,7 @@ class JpegMetadataExtractor {
if ( strlen( $segment ) !== $size['int'] - 2 ) {
throw new MWException( "Segment shorter than expected" );
}
+
return $segment;
}
@@ -193,9 +193,10 @@ class JpegMetadataExtractor {
*
* This should generally be called by BitmapMetadataHandler::doApp13()
*
- * @param string $app13 photoshop psir app13 block from jpg.
+ * @param string $app13 Photoshop psir app13 block from jpg.
* @throws MWException (It gets caught next level up though)
- * @return String if the iptc hash is good or not.
+ * @return string If the iptc hash is good or not. One of 'iptc-no-hash',
+ * 'iptc-good-hash', 'iptc-bad-hash'.
*/
public static function doPSIR( $app13 ) {
if ( !$app13 ) {
@@ -275,7 +276,6 @@ class JpegMetadataExtractor {
$lenData['len']++;
}
$offset += $lenData['len'];
-
}
if ( !$realHash || !$recordedHash ) {