Skip to content

Conversation

nikic
Copy link
Member

@nikic nikic commented Sep 12, 2019

Bug #78525

When calling free_result_buffers(), also free field metadata and restore the mempool state to what it was before any allocations have been made. Remove the mempool save/restore logic for the inner result set as this is now handled on a higher level.

When calling free_result_buffers(), also free field metadata and
restore the mempool state to what it was before any allocations
have been made. Remove the mempool save/restore logic for the
inner result set as this is now handled on a higher level.
@nikic
Copy link
Member Author

nikic commented Sep 12, 2019

@dstogov Does this look right to you?

ret = pool->get_chunk(pool, alloc_size);
memset(ret, 0, alloc_size);

if (FAIL == mysqlnd_error_info_init(&ret->error_info, 0)) {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that this call can't actually fail ... we should make it void in master.

@dstogov
Copy link
Member

dstogov commented Sep 12, 2019

I think, this is right. But it's really hard to follow all the possible flows through mysqlnd abstractions.

@nikic
Copy link
Member Author

nikic commented Sep 13, 2019

Merged as df982da.

@nikic nikic closed this Sep 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants