فهرست منبع

web intf: make sure that all contents are actually downloaded and not played by the browser

the underlying code is prepared to allow playback in browser, too, once the UI is ready
Felix Paul Kühne 11 سال پیش
والد
کامیت
6e75d87707
1فایلهای تغییر یافته به همراه8 افزوده شده و 3 حذف شده
  1. 8 3
      Sources/VLCHTTPConnection.m

+ 8 - 3
Sources/VLCHTTPConnection.m

@@ -95,7 +95,9 @@
     }
     if ([path hasPrefix:@"/download/"]) {
         NSString *filePath = [[path stringByReplacingOccurrencesOfString:@"/download/" withString:@""]stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
-        return [[HTTPFileResponse alloc] initWithFilePath:filePath forConnection:self];
+        HTTPFileResponse *fileResponse = [[HTTPFileResponse alloc] initWithFilePath:filePath forConnection:self];
+        fileResponse.contentType = @"application/octet-stream";
+        return fileResponse;
     }
     if ([path hasPrefix:@"/thumbnail"]) {
         NSString *filePath = [[path stringByReplacingOccurrencesOfString:@"/thumbnail/" withString:@""]stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
@@ -119,8 +121,11 @@
         else if ([mo isKindOfClass:[MLShowEpisode class]])
             theData = UIImagePNGRepresentation([VLCThumbnailsCache thumbnailForMediaFile:[(MLShowEpisode *)mo files].anyObject]);
 
-        if (theData)
-            return [[HTTPDataResponse alloc] initWithData:theData];
+        if (theData) {
+            HTTPDataResponse *dataResponse = [[HTTPDataResponse alloc] initWithData:theData];
+            dataResponse.contentType = @"image/png";
+            return dataResponse;
+        }
     }
     NSString *filePath = [self filePathForURI:path];
     NSString *documentRoot = [config documentRoot];