229 DEBUG(grf, 1, "NewGRF %08X (%s) not found; checksum %s. Compatibility mode on", BSWAP32(c->grfid), c->filename, buf); |
230 DEBUG(grf, 1, "NewGRF %08X (%s) not found; checksum %s. Compatibility mode on", BSWAP32(c->grfid), c->filename, buf); |
230 SetBit(c->flags, GCF_COMPATIBLE); |
231 SetBit(c->flags, GCF_COMPATIBLE); |
231 |
232 |
232 /* Non-found has precedence over compatibility load */ |
233 /* Non-found has precedence over compatibility load */ |
233 if (res != GLC_NOT_FOUND) res = GLC_COMPATIBLE; |
234 if (res != GLC_NOT_FOUND) res = GLC_COMPATIBLE; |
|
235 GamelogGRFCompatible(f); |
234 goto compatible_grf; |
236 goto compatible_grf; |
235 } |
237 } |
236 |
238 |
237 /* No compatible grf was found, mark it as disabled */ |
239 /* No compatible grf was found, mark it as disabled */ |
238 md5sumToString(buf, lastof(buf), c->md5sum); |
240 md5sumToString(buf, lastof(buf), c->md5sum); |
239 DEBUG(grf, 0, "NewGRF %08X (%s) not found; checksum %s", BSWAP32(c->grfid), c->filename, buf); |
241 DEBUG(grf, 0, "NewGRF %08X (%s) not found; checksum %s", BSWAP32(c->grfid), c->filename, buf); |
|
242 |
|
243 GamelogGRFRemove(c->grfid); |
240 |
244 |
241 c->status = GCS_NOT_FOUND; |
245 c->status = GCS_NOT_FOUND; |
242 res = GLC_NOT_FOUND; |
246 res = GLC_NOT_FOUND; |
243 } else { |
247 } else { |
244 compatible_grf: |
248 compatible_grf: |