| 652 | } |
| 653 | |
| 654 | PiuIdle PiuContentUseIdle(void* it) |
| 655 | { |
| 656 | PiuContent* self = it; |
| 657 | if ((*self)->idleOffset) |
| 658 | return (PiuIdle)(((uint8_t *)*self) + (*self)->idleOffset); |
| 659 | |
| 660 | size_t current = (*self)->recordSize; |
| 661 | |
| 662 | size_t nameLength = (*self)->nameOffset ? (current - (*self)->nameOffset) : 0; |
| 663 | void *chunk = fxRenewChunk((*self)->the, *self, (xsIntegerValue)(current + sizeof(PiuIdleRecord))); |
| 664 | if (!chunk) { |
| 665 | chunk = fxNewChunk((*self)->the, (xsIntegerValue)(current + sizeof(PiuIdleRecord))); |
| 666 | c_memcpy(chunk, *self, current); |
| 667 | *self = chunk; |
| 668 | } |
| 669 | if ((*self)->nameOffset) { |
| 670 | (*self)->nameOffset += sizeof(PiuIdleRecord); |
| 671 | c_memcpy(((uint8_t *)chunk) + (*self)->nameOffset, ((uint8_t *)chunk) + current - nameLength, nameLength); |
| 672 | } |
| 673 | c_memset(((uint8_t *)chunk) + current - nameLength, 0, sizeof(PiuIdleRecord)); |
| 674 | |
| 675 | (*self)->recordSize = PiuRecordSize(current + sizeof(PiuIdleRecord)); |
| 676 | (*self)->idleOffset = (uint32_t)(current - nameLength); |
| 677 | |
| 678 | PiuIdle result = (PiuIdle)(((uint8_t *)*self) + (*self)->idleOffset); |
| 679 | result->interval = 1; |
| 680 | return result; |
| 681 | } |
| 682 | |
| 683 | void PiuContent_create(xsMachine* the) |
| 684 | { |
no test coverage detected