comparison mde/file/deserialize.d @ 154:0520cc00c0cc

Better error reporting for loading translations; avoided an infinite loop.
author Diggory Hardy <diggory.hardy@gmail.com>
date Sat, 18 Apr 2009 12:02:33 +0200
parents 7f7b40fed72b
children
comparison
equal deleted inserted replaced
153:2934fcacbb97 154:0520cc00c0cc
304 break; 304 break;
305 // key must be an int so no need for string checks 305 // key must be an int so no need for string checks
306 ++i; 306 ++i;
307 } 307 }
308 if (i >= pair.length) 308 if (i >= pair.length)
309 throw new ParseException ("Invalid struct: encountered { ... KEY} (missing :DATA)"); 309 throw new ParseException ("Invalid KEY:DATA pair within struct: "~pair);
310 310
311 size_t k = deserialize!(size_t) (pair[0..i]); 311 size_t k = deserialize!(size_t) (pair[0..i]);
312 // Note: could check no entry was already stored in temp. 312 // Note: could check no entry was already stored in temp.
313 temp[k] = pair[i+1..$]; 313 temp[k] = pair[i+1..$];
314 } 314 }