meta.xml reading error
#1

Hey!

I've got a problem with my .map loader script. My script load the meta.xml data incorrectly.
Script:
Код:
                    new File:metaxml = f_open(metafile);
					while(f_read(metaxml, string)) {
                        if(!sscanf(string, "p<\">'info''name='s[64]'author='s[64]", mapname, mappername)) {
                            format(hgInfo[hgMapName], 64, mapname);
                            format(hgInfo[hgMapAuthor], 64, mappername);
						}
					}
                    f_close(metaxml);
The problem:
Код:
[12:58:11] Map: First test
[12:58:11] Author: Ketske" version="1.0.0"></info>
Meta.xml
Код:
<info gamemodes="tdm" type="map" name="First test" author="Ketske" version="1.0.0"></info>
The sscanf loaded more than they should, so sscanf doesn't stop at the " sign.
What's the solution?
P.S: I use filemanager plugin AND Sorry for my bad english.
Reply
#2

Solved.
Код:
                        if(!sscanf(string, "p<\">'info''name='s[64]'author='s[64]", mapname, mappername)) {
                            format(hgInfo[hgMapName], 64, mapname);
                            if(strfind(mappername, "\"", true) != -1)
                                strdel(mappername, strfind(mappername, "\"", true), strlen(mappername));
                            format(hgInfo[hgMapAuthor], 64, mappername);
						}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)