Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if(seedID <= 0) printf("'%d' is not a valid seed ID.\n\n\n", seedID); //Seed ID cannot be 0 or negative
- else if(deletedSeed.price == -1)
- {
- printf("Seed '%d' already deleted.\n\n\n", seedID);
- #ifdef DEBUG
- printf("%d (seedID)\n\n", seedID);
- #endif
- return; //Seed already deleted
- }
- else if(readBytes != 0)
- {
- if(deletedPointer.firstDeletedSID == 0) deletedPointer.firstDeletedSID = deletedSeed.SID;
- else
- {
- tempSeed.SID = deletedPointer.firstDeletedSID;
- deletedPointer.firstDeletedSID = deletedSeed.SID;
- deletedSeed.deleted = (Seed*)malloc(sizeof(struct Seed));
- deletedSeed.deleted->SID = tempSeed.SID;
- }
- #ifdef DEBUG
- printf("[");
- while(deletedSeed.deleted != NULL)
- {
- printf("%d ", deletedSeed.SID);
- deletedSeed = deletedSeed->deleted;
- }
- printf("]");
- printf("\n\n");
- #endif
- lseek(seedfd, 0, SEEK_SET); //Go to header
- write(seedfd, &deletedPointer, sizeof(struct Header)); //Deletion of seed
- deletedSeed.price = -1;
- lseek(seedfd, sizeof(struct Seed)*(seedID - 1) + sizeof(struct Header), SEEK_SET); //Go to location of seed ID in file
- write(seedfd, &deletedSeed, sizeof(struct Seed)); //Deletion of seed
- }
- else printf("Seed '%d' not found.\n\n\n", seedID); //Seed ID does not exist in file (out of bounds)
- }
Add Comment
Please, Sign In to add comment