diff --git a/aegilib/aegilib.vcproj b/aegilib/aegilib.vcproj index 4285eff65..54651895f 100644 --- a/aegilib/aegilib.vcproj +++ b/aegilib/aegilib.vcproj @@ -53,6 +53,7 @@ DebugInformationFormat="4" DisableSpecificWarnings="4996" ForcedIncludeFiles="prec.h" + EnablePREfast="false" /> GetPropertyCount(); for (size_t i=0;iGetPropertyName(i); - writer.WriteLineToFile(name + _T(": ") + section->GetProperty(name)); + String propName = section->GetPropertyName(i); + writer.WriteLineToFile(propName + _T(": ") + section->GetProperty(name)); } // Write contents diff --git a/aegilib/src/formats/format_ass.h b/aegilib/src/formats/format_ass.h index b329d0cb8..929188d32 100644 --- a/aegilib/src/formats/format_ass.h +++ b/aegilib/src/formats/format_ass.h @@ -39,6 +39,7 @@ #include "section.h" #include "section_entry_dialogue.h" #include "section_entry_style.h" +#include "tr1.h" namespace Aegilib { @@ -119,7 +120,7 @@ namespace Aegilib { String effect; String actor; Time start,end; - int margin[4]; + array margin; int layer; bool isComment; @@ -143,7 +144,7 @@ namespace Aegilib { Time GetEndTime() const { return end; } bool IsComment() const { return isComment; } int GetLayer() const { return layer; } - int GetMargin(int n) const { return margin[n]; } + int GetMargin(int n) const { return margin.at(n); } const String& GetStyle() const { return style; } const String& GetActor() const { return actor; } const String& GetUserField() const { return effect; } @@ -154,7 +155,7 @@ namespace Aegilib { void SetEndTime(Time setEnd) { end = setEnd; } void SetComment(bool _isComment) { isComment = _isComment; } void SetLayer(int _layer) { layer = _layer; } - void SetMargin(int _margin,int value) { margin[_margin] = value; } + void SetMargin(int _margin,int value) { margin.at(_margin) = value; } void SetStyle(const String &_style) { style = _style; } void SetUserField(const String &userField) { effect = userField; } }; @@ -166,8 +167,8 @@ namespace Aegilib { String font; float fontSize; - Colour colour[5]; // 0 = Primary, 1 = Secondary, 2 = Tertiary, 3 = Outline, 4 = Shadow - int margin[4]; + array colour; // 0 = Primary, 1 = Secondary, 2 = Tertiary, 3 = Outline, 4 = Shadow + array margin; bool bold; bool italic; @@ -200,8 +201,8 @@ namespace Aegilib { String GetName() const { return name; } String GetFontName() const { return font; } float GetFontSize() const { return fontSize; } - Colour GetColour(int n) const { return colour[n]; } - int GetMargin(int n) const { return margin[n]; } + Colour GetColour(int n) const { return colour.at(n); } + int GetMargin(int n) const { return margin.at(n); } }; }; diff --git a/aegilib/src/text_file_reader.cpp b/aegilib/src/text_file_reader.cpp index f843ef54a..a9fc44b6a 100644 --- a/aegilib/src/text_file_reader.cpp +++ b/aegilib/src/text_file_reader.cpp @@ -74,7 +74,7 @@ void TextFileReader::SetEncodingConfiguration() { // Set encoding configuration swap = false; Is16 = false; - conv = shared_ptr(); + //conv = shared_ptr(); if (encoding == _T("UTF-8")) { conv = shared_ptr (new wxMBConvUTF8); } diff --git a/aegilib/src/version.cpp b/aegilib/src/version.cpp index aebaa5f3f..924bcad88 100644 --- a/aegilib/src/version.cpp +++ b/aegilib/src/version.cpp @@ -35,7 +35,7 @@ #include "version.h" -#include "tr1.h" +#include "aegistring.h" using namespace Aegilib; @@ -57,17 +57,17 @@ String Aegilib::GetLibraryURL() ///////////////////////// // Host application data -static shared_ptr hostName; -static shared_ptr hostURL; +static String* hostName = NULL; +static String* hostURL = NULL; void Aegilib::SetHostApplicationName(const String name) { - if (!hostName) hostName = shared_ptr (new String()); + if (!hostName) hostName = new String(); *hostName = name; } void Aegilib::SetHostApplicationURL(const String url) { - if (!hostURL) hostName = shared_ptr (new String()); + if (!hostURL) hostURL = new String(); *hostURL = url; } String Aegilib::GetHostApplicationName() diff --git a/aegisub/include/aegisub/audio_player.h b/aegisub/include/aegisub/audio_player.h index f58d49347..96c606924 100644 --- a/aegisub/include/aegisub/audio_player.h +++ b/aegisub/include/aegisub/audio_player.h @@ -97,5 +97,6 @@ public: // Factory class AudioPlayerFactory { public: + virtual ~AudioPlayerFactory() {} virtual AudioPlayer *CreatePlayer()=0; }; diff --git a/aegisub/include/aegisub/audio_provider.h b/aegisub/include/aegisub/audio_provider.h index 98fa820dc..2dcf3cacd 100644 --- a/aegisub/include/aegisub/audio_provider.h +++ b/aegisub/include/aegisub/audio_provider.h @@ -83,5 +83,6 @@ public: // Factory class AudioProviderFactory { public: + virtual ~AudioProviderFactory() {} virtual AudioProvider *CreateProvider(Aegisub::String filename)=0; }; diff --git a/aegisub/include/aegisub/spellchecker.h b/aegisub/include/aegisub/spellchecker.h index 845218641..205514315 100644 --- a/aegisub/include/aegisub/spellchecker.h +++ b/aegisub/include/aegisub/spellchecker.h @@ -64,5 +64,6 @@ public: // Factory class SpellCheckerFactory { public: + virtual ~SpellCheckerFactory() {} virtual SpellChecker *CreateSpellChecker()=0; }; diff --git a/aegisub/include/aegisub/video_provider.h b/aegisub/include/aegisub/video_provider.h index b7f66ad3f..cd78ba604 100644 --- a/aegisub/include/aegisub/video_provider.h +++ b/aegisub/include/aegisub/video_provider.h @@ -87,5 +87,6 @@ public: // Factory class VideoProviderFactory { public: + virtual ~VideoProviderFactory() {} virtual VideoProvider *CreateProvider(Aegisub::String video,double fps=0.0)=0; };