@@ -105,13 +105,17 @@ std::vector<ModStoreMod> readModStoreList(Json::Value& modlist) {
105
105
106
106
//id
107
107
if (modlist[i]["id"].asString().size()) {
108
- const char* id_raw = modlist[i]["id"].asString().c_str ();
108
+ std::string id_raw = modlist[i]["id"].asString();
109
109
char* endptr = 0;
110
- int numbervalue = strtol(id_raw,&endptr,10);
110
+ int numbervalue = strtol(id_raw.c_str() ,&endptr,10);
111
111
112
- if ((* id_raw != 0 ) && (*endptr == 0)) {
112
+ if ((id_raw != "" ) && (*endptr == 0)) {
113
113
toadd.id = numbervalue;
114
114
}
115
+ else {
116
+ errorstream << "readModStoreList: missing id" << std::endl;
117
+ toadd.valid = false;
118
+ }
115
119
}
116
120
else {
117
121
errorstream << "readModStoreList: missing id" << std::endl;
@@ -163,11 +167,11 @@ ModStoreModDetails readModStoreModDetails(Json::Value& details) {
163
167
ModStoreVersionEntry toadd;
164
168
165
169
if (details["version_set"][i]["id"].asString().size()) {
166
- const char* id_raw = details["version_set"][i]["id"].asString().c_str ();
170
+ std::string id_raw = details["version_set"][i]["id"].asString();
167
171
char* endptr = 0;
168
- int numbervalue = strtol(id_raw,&endptr,10);
172
+ int numbervalue = strtol(id_raw.c_str() ,&endptr,10);
169
173
170
- if ((* id_raw != 0 ) && (*endptr == 0)) {
174
+ if ((id_raw != "" ) && (*endptr == 0)) {
171
175
toadd.id = numbervalue;
172
176
}
173
177
}
@@ -215,11 +219,11 @@ ModStoreModDetails readModStoreModDetails(Json::Value& details) {
215
219
216
220
if (details["categories"][i]["id"].asString().size()) {
217
221
218
- const char* id_raw = details["categories"][i]["id"].asString().c_str ();
222
+ std::string id_raw = details["categories"][i]["id"].asString();
219
223
char* endptr = 0;
220
- int numbervalue = strtol(id_raw,&endptr,10);
224
+ int numbervalue = strtol(id_raw.c_str() ,&endptr,10);
221
225
222
- if ((* id_raw != 0 ) && (*endptr == 0)) {
226
+ if ((id_raw != "" ) && (*endptr == 0)) {
223
227
toadd.id = numbervalue;
224
228
}
225
229
}
@@ -248,11 +252,11 @@ ModStoreModDetails readModStoreModDetails(Json::Value& details) {
248
252
if (details["author"].isObject()) {
249
253
if (details["author"]["id"].asString().size()) {
250
254
251
- const char* id_raw = details["author"]["id"].asString().c_str ();
255
+ std::string id_raw = details["author"]["id"].asString();
252
256
char* endptr = 0;
253
- int numbervalue = strtol(id_raw,&endptr,10);
257
+ int numbervalue = strtol(id_raw.c_str() ,&endptr,10);
254
258
255
- if ((* id_raw != 0 ) && (*endptr == 0)) {
259
+ if ((id_raw != "" ) && (*endptr == 0)) {
256
260
retval.author.id = numbervalue;
257
261
}
258
262
else {
@@ -282,11 +286,11 @@ ModStoreModDetails readModStoreModDetails(Json::Value& details) {
282
286
if (details["license"].isObject()) {
283
287
if (details["license"]["id"].asString().size()) {
284
288
285
- const char* id_raw = details["license"]["id"].asString().c_str ();
289
+ std::string id_raw = details["license"]["id"].asString();
286
290
char* endptr = 0;
287
- int numbervalue = strtol(id_raw,&endptr,10);
291
+ int numbervalue = strtol(id_raw.c_str() ,&endptr,10);
288
292
289
- if ((* id_raw != 0 ) && (*endptr == 0)) {
293
+ if ((id_raw != "" ) && (*endptr == 0)) {
290
294
retval.license.id = numbervalue;
291
295
}
292
296
}
@@ -313,11 +317,11 @@ ModStoreModDetails readModStoreModDetails(Json::Value& details) {
313
317
if (details["titlepic"].isObject()) {
314
318
if (details["titlepic"]["id"].asString().size()) {
315
319
316
- const char* id_raw = details["titlepic"]["id"].asString().c_str ();
320
+ std::string id_raw = details["titlepic"]["id"].asString();
317
321
char* endptr = 0;
318
- int numbervalue = strtol(id_raw,&endptr,10);
322
+ int numbervalue = strtol(id_raw.c_str() ,&endptr,10);
319
323
320
- if ((* id_raw != 0 ) && (*endptr == 0)) {
324
+ if ((id_raw != "" ) && (*endptr == 0)) {
321
325
retval.titlepic.id = numbervalue;
322
326
}
323
327
}
@@ -332,11 +336,11 @@ ModStoreModDetails readModStoreModDetails(Json::Value& details) {
332
336
333
337
if (details["titlepic"]["mod"].asString().size()) {
334
338
335
- const char* mod_raw = details["titlepic"]["mod"].asString().c_str ();
339
+ std::string mod_raw = details["titlepic"]["mod"].asString();
336
340
char* endptr = 0;
337
- int numbervalue = strtol(mod_raw,&endptr,10);
341
+ int numbervalue = strtol(mod_raw.c_str() ,&endptr,10);
338
342
339
- if ((* mod_raw != 0 ) && (*endptr == 0)) {
343
+ if ((mod_raw != "" ) && (*endptr == 0)) {
340
344
retval.titlepic.mod = numbervalue;
341
345
}
342
346
}
@@ -345,11 +349,11 @@ ModStoreModDetails readModStoreModDetails(Json::Value& details) {
345
349
//id
346
350
if (details["id"].asString().size()) {
347
351
348
- const char* id_raw = details["id"].asString().c_str ();
352
+ std::string id_raw = details["id"].asString();
349
353
char* endptr = 0;
350
- int numbervalue = strtol(id_raw,&endptr,10);
354
+ int numbervalue = strtol(id_raw.c_str() ,&endptr,10);
351
355
352
- if ((* id_raw != 0 ) && (*endptr == 0)) {
356
+ if ((id_raw != "" ) && (*endptr == 0)) {
353
357
retval.id = numbervalue;
354
358
}
355
359
}
@@ -389,11 +393,11 @@ ModStoreModDetails readModStoreModDetails(Json::Value& details) {
389
393
//value
390
394
if (details["rating"].asString().size()) {
391
395
392
- const char* id_raw = details["rating"].asString().c_str ();
396
+ std::string id_raw = details["rating"].asString();
393
397
char* endptr = 0;
394
- float numbervalue = strtof(id_raw,&endptr);
398
+ float numbervalue = strtof(id_raw.c_str() ,&endptr);
395
399
396
- if ((* id_raw != 0 ) && (*endptr == 0)) {
400
+ if ((id_raw != "" ) && (*endptr == 0)) {
397
401
retval.rating = numbervalue;
398
402
}
399
403
}
0 commit comments