Merge r5447 to trunk

This commit is contained in:
adelikat 2013-11-27 21:45:50 +00:00
parent 9e521a1f14
commit 27cc689176
3 changed files with 16 additions and 12 deletions

View File

@ -1,7 +1,7 @@
using System; using System;
using System.IO; using System.IO;
using System.Globalization; using System.Globalization;
using BizHawk.Common;
using BizHawk.Emulation.Common; using BizHawk.Emulation.Common;
using System.Collections.Generic; using System.Collections.Generic;
@ -298,10 +298,10 @@ namespace BizHawk.Client.Common
/// Load Header information only for displaying file information in dialogs such as play movie /// Load Header information only for displaying file information in dialogs such as play movie
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
public bool PreLoadText() public bool PreLoadText(HawkFile hawkFile)
{ {
Loaded = false; Loaded = false;
var file = new FileInfo(Filename); var file = new FileInfo(hawkFile.CanonicalFullPath);
if (file.Exists == false) if (file.Exists == false)
return false; return false;
@ -311,7 +311,10 @@ namespace BizHawk.Client.Common
_log.Clear(); _log.Clear();
} }
using (StreamReader sr = file.OpenText()) long origStreamPosn = hawkFile.GetStream().Position;
hawkFile.GetStream().Position = 0; //Reset to start
StreamReader sr = new StreamReader(hawkFile.GetStream()); //No using block because we're sharing the stream and need to give it back undisposed.
if(!sr.EndOfStream)
{ {
string str; string str;
while ((str = sr.ReadLine()) != null) while ((str = sr.ReadLine()) != null)
@ -346,6 +349,7 @@ namespace BizHawk.Client.Common
} }
} }
} }
hawkFile.GetStream().Position = origStreamPosn;
return true; return true;
} }

View File

@ -171,15 +171,15 @@ namespace BizHawk.Client.EmuHawk
return 0; return 0;
} }
private void PreLoadMovieFile(HawkFile path, bool force) private void PreLoadMovieFile(HawkFile hf, bool force)
{ {
Movie movie = new Movie(path.CanonicalFullPath); Movie movie = new Movie(hf.CanonicalFullPath);
movie.PreLoadText(); movie.PreLoadText(hf);
if (path.Extension == ".FM2") if (hf.Extension == ".FM2")
{ {
movie.Header.SetHeaderLine(MovieHeader.PLATFORM, "NES"); movie.Header.SetHeaderLine(MovieHeader.PLATFORM, "NES");
} }
else if (path.Extension == ".MC2") else if (hf.Extension == ".MC2")
{ {
movie.Header.SetHeaderLine(MovieHeader.PLATFORM, "PCE"); movie.Header.SetHeaderLine(MovieHeader.PLATFORM, "PCE");
} }

View File

@ -30,10 +30,10 @@ namespace BizHawk.Client.EmuHawk
if (RecordBox.Text.Length == 0) if (RecordBox.Text.Length == 0)
return ""; return "";
string path = RecordBox.Text; string path = RecordBox.Text;
if (path.LastIndexOf('\\') == -1) if (path.LastIndexOf(Path.DirectorySeparatorChar) == -1)
{ {
if (path[0] != '\\') if (path[0] != Path.DirectorySeparatorChar)
path = path.Insert(0, "\\"); path = path.Insert(0, Path.DirectorySeparatorChar.ToString());
path = PathManager.MakeAbsolutePath(Global.Config.PathEntries.MoviesPath, null) + path; path = PathManager.MakeAbsolutePath(Global.Config.PathEntries.MoviesPath, null) + path;
if (path[path.Length - 4] != '.') //If no file extension, add movie extension if (path[path.Length - 4] != '.') //If no file extension, add movie extension