summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/tafreader.cpp6
-rw-r--r--src/tafwriter.cpp2
2 files changed, 8 insertions, 0 deletions
diff --git a/src/tafreader.cpp b/src/tafreader.cpp
index 7b5e65d..db2e9f5 100644
--- a/src/tafreader.cpp
+++ b/src/tafreader.cpp
@@ -146,6 +146,12 @@ Bu::FString Bu::TafReader::readStr()
146 } 146 }
147 else if( c == '"' ) 147 else if( c == '"' )
148 c = '"'; 148 c = '"';
149 else if( c == '\\' )
150 c = '\\';
151 else if( c == 'n' )
152 c = '\n';
153 else if( c == 't' )
154 c = '\t';
149 else 155 else
150 throw TafException("Invalid escape sequence at %d:%d.", iLine, iCol ); 156 throw TafException("Invalid escape sequence at %d:%d.", iLine, iCol );
151 } 157 }
diff --git a/src/tafwriter.cpp b/src/tafwriter.cpp
index 8dcde86..c30bc67 100644
--- a/src/tafwriter.cpp
+++ b/src/tafwriter.cpp
@@ -97,6 +97,8 @@ void Bu::TafWriter::writeString( const Bu::FString &str )
97 { 97 {
98 if( *s == '\"' ) 98 if( *s == '\"' )
99 sOut.write("\\\"", 2 ); 99 sOut.write("\\\"", 2 );
100 else if( *s == '\\' )
101 sOut.write("\\\\", 2 );
100 else 102 else
101 sOut.write( s, 1 ); 103 sOut.write( s, 1 );
102 } 104 }