Overview
| Comment: | Fix a bug in writing message numbers into CLASS.DEF lump |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
a0a2d667be0382d042b9f01fdb206d08 |
| User & Date: | user on 2021-06-25 04:17:29.117 |
| Other Links: | manifest | tags |
Context
|
2021-06-27
| ||
| 07:23 | If level number specified on command-line exceeds maximum, use maximum level number instead. check-in: 0da277ed18 user: user tags: trunk | |
|
2021-06-25
| ||
| 04:17 | Fix a bug in writing message numbers into CLASS.DEF lump check-in: a0a2d667be user: user tags: trunk | |
|
2021-06-24
| ||
| 21:25 | Add and implement the Trigger and TriggerAt instructions. check-in: f36f18a600 user: user tags: trunk | |
Changes
Modified class.c
from [8f8b65d78b]
to [ca10f29396].
| ︙ | ︙ | |||
2074 2075 2076 2077 2078 2079 2080 |
long size=0;
unsigned char*data=read_lump(FIL_LEVEL,LUMP_CLASS_DEF,&size);
unsigned char*p;
if(!data) return;
for(i=0;i<size-3;) {
n=data[i]|(data[i+1]<<8);
if(!n) break;
| | | | 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 |
long size=0;
unsigned char*data=read_lump(FIL_LEVEL,LUMP_CLASS_DEF,&size);
unsigned char*p;
if(!data) return;
for(i=0;i<size-3;) {
n=data[i]|(data[i+1]<<8);
if(!n) break;
if(n>=0x4000) fatal("Malformed CLASS.DEF lump (invalid class number %d)\n",n);
i+=2;
p=data+i;
while(i<size && data[i++]);
if(i==size && data[i-1]) fatal("Malformed CLASS.DEF lump\n");
initialize_class(n,CF_NOCLASS2,p);
}
i+=2;
for(;i<size-3;) {
n=data[i]|(data[i+1]<<8);
if(n<256 || n>=0x4100) fatal("Malformed CLASS.DEF lump (invalid message number %d)\n",n);
n-=256;
i+=2;
p=data+i;
while(i<size && data[i++]);
if(i==size && data[i-1]) fatal("Malformed CLASS.DEF lump\n");
if(messages[n]) fatal("Duplicate message number %d\n",n+256);
messages[n]=strdup(p);
|
| ︙ | ︙ |
Modified edit.c
from [cff0e2cf25]
to [a68bdbab0e].
| ︙ | ︙ | |||
75 76 77 78 79 80 81 |
sqlite3_str_appendchar(s,1,i>>8);
sqlite3_str_appendall(s,classes[i]->name);
sqlite3_str_appendchar(s,1,0);
}
sqlite3_str_appendchar(s,2,0);
for(i=0;i<0x4000;i++) if(mu[i/8]&(1<<(i&7))) {
sqlite3_str_appendchar(s,1,i&255);
| | | 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 |
sqlite3_str_appendchar(s,1,i>>8);
sqlite3_str_appendall(s,classes[i]->name);
sqlite3_str_appendchar(s,1,0);
}
sqlite3_str_appendchar(s,2,0);
for(i=0;i<0x4000;i++) if(mu[i/8]&(1<<(i&7))) {
sqlite3_str_appendchar(s,1,i&255);
sqlite3_str_appendchar(s,1,(i+256)>>8);
sqlite3_str_appendall(s,messages[i]);
sqlite3_str_appendchar(s,1,0);
}
// End of data
size=sqlite3_str_length(s);
data=sqlite3_str_finish(s);
if(!size || !data) fatal("Error in string builder\n");
|
| ︙ | ︙ |