(svn r14161) -Codechange: allow inis to be loaded from tars.
authorrubidium
Sun, 24 Aug 2008 23:12:10 +0000
changeset 10003 7ce0cbe8575f
parent 10002 87148ad75853
child 10004 e8985b8f9841
(svn r14161) -Codechange: allow inis to be loaded from tars.
src/ini.cpp
--- a/src/ini.cpp	Sun Aug 24 23:10:23 2008 +0000
+++ b/src/ini.cpp	Sun Aug 24 23:12:10 2008 +0000
@@ -8,6 +8,7 @@
 #include "debug.h"
 #include "ini_type.h"
 #include "string_func.h"
+#include "fileio.h"
 
 IniItem::IniItem(IniGroup *parent, const char *name, size_t len) : next(NULL), value(NULL), comment(NULL)
 {
@@ -138,12 +139,14 @@
 	uint comment_size = 0;
 	uint comment_alloc = 0;
 
-	FILE *in = fopen(filename, "r");
+	size_t end;
+	FILE *in = FioFOpenFile(filename, "r", DATA_DIR, &end);
 	if (in == NULL) return;
 
+	end += ftell(in);
+
 	/* for each line in the file */
-	while (fgets(buffer, sizeof(buffer), in)) {
-
+	while ((size_t)ftell(in) < end && fgets(buffer, sizeof(buffer), in)) {
 		/* trim whitespace from the left side */
 		for (s = buffer; *s == ' ' || *s == '\t'; s++) {}