* adfEntry2CacheEntry * * converts one dir entry into a cache entry, and return its future length in records[] */
| 243 | * converts one dir entry into a cache entry, and return its future length in records[] |
| 244 | */ |
| 245 | int adfEntry2CacheEntry(struct bEntryBlock *entry, struct CacheEntry *newEntry) |
| 246 | { |
| 247 | int entryLen; |
| 248 | |
| 249 | /* new entry */ |
| 250 | newEntry->header = entry->headerKey; |
| 251 | if (entry->secType==ST_FILE) |
| 252 | newEntry->size = entry->byteSize; |
| 253 | else |
| 254 | newEntry->size = 0L; |
| 255 | newEntry->protect = entry->access; |
| 256 | newEntry->days = (short)entry->days; |
| 257 | newEntry->mins = (short)entry->mins; |
| 258 | newEntry->ticks = (short)entry->ticks; |
| 259 | newEntry->type = (signed char)entry->secType; |
| 260 | newEntry->nLen = entry->nameLen; |
| 261 | memcpy(newEntry->name, entry->name, newEntry->nLen); |
| 262 | newEntry->name[(int)(newEntry->nLen)] = '\0'; |
| 263 | newEntry->cLen = entry->commLen; |
| 264 | if (newEntry->cLen>0) |
| 265 | memcpy(newEntry->comm, entry->comment, newEntry->cLen); |
| 266 | |
| 267 | entryLen = 24+newEntry->nLen+1+newEntry->cLen; |
| 268 | |
| 269 | /*printf("entry->name %d entry->comment %d\n",entry->nameLen,entry->commLen); |
| 270 | printf("newEntry->nLen %d newEntry->cLen %d\n",newEntry->nLen,newEntry->cLen); |
| 271 | */ if ((entryLen%2)==0) |
| 272 | return entryLen; |
| 273 | else |
| 274 | return entryLen+1; |
| 275 | } |
| 276 | |
| 277 | |
| 278 | /* |
no outgoing calls
no test coverage detected