Bläddra i källkod

* Actually observe TStringStream.OwnsEncoding in destructor

git-svn-id: trunk@39379 -
michael 7 år sedan
förälder
incheckning
844a9b0ca6
2 ändrade filer med 8 tillägg och 0 borttagningar
  1. 1 0
      rtl/objpas/classes/classesh.inc
  2. 7 0
      rtl/objpas/classes/streams.inc

+ 1 - 0
rtl/objpas/classes/classesh.inc

@@ -1039,6 +1039,7 @@ type
     constructor Create(const AString: UnicodeString); overload;
     constructor Create(const AString: UnicodeString; AEncoding: TEncoding; AOwnsEncoding: Boolean = True); overload;
     constructor Create(const AString: UnicodeString; ACodePage: Integer); overload;
+    Destructor Destroy; override;
     function ReadUnicodeString(Count: Longint): UnicodeString;
     procedure WriteUnicodeString(const AString: UnicodeString);
     function ReadAnsiString(Count: Longint): AnsiString;

+ 7 - 0
rtl/objpas/classes/streams.inc

@@ -874,6 +874,13 @@ begin
   Create(AString,TEncoding.GetEncoding(ACodePage),true);
 end;
 
+destructor TStringStream.Destroy;
+begin
+  If FOwnsEncoding then
+    FreeAndNil(FEncoding);
+  inherited Destroy;
+end;
+
 
 function TStringStream.ReadString(Count: Longint): string;