Skip to content
This repository was archived by the owner on Aug 31, 2021. It is now read-only.

[[ Bug 22130 ]] Disable deleted object pool creation whilst debugging - #7185

Merged
livecodepanos merged 1 commit into
livecode:release-9.0.5from
runrevmark:bugfix-22130
Oct 3, 2019
Merged

[[ Bug 22130 ]] Disable deleted object pool creation whilst debugging#7185
livecodepanos merged 1 commit into
livecode:release-9.0.5from
runrevmark:bugfix-22130

Conversation

@runrevmark

@runrevmark runrevmark commented Oct 2, 2019

Copy link
Copy Markdown
Contributor

This patch adds a 'freeze' count to the deleted object pool logic. When the current
pool is frozen, no new pools will be created until it is thawed again. This means
that all objects that are deleted during that period are accumulated in the frozen
pool.

This ability is used inside MCB_prepmessage, which is the handler which causes the
engine to enter debug mode and send a message. Doing this prevents corruption of
the deleted object pools stack which appears to occur when the script editor
manipulates menus in the context of a debug-related message.

As the use of freezing the current object pool is only used in this one place it
has no effect on normal running code, only on code which runs in the context of
a debug-related message.

@runrevmark runrevmark added the bug label Oct 2, 2019
@runrevmark runrevmark added this to the 9.5.1-rc-1 milestone Oct 2, 2019
@runrevmark runrevmark self-assigned this Oct 2, 2019
@runrevmark
runrevmark changed the base branch from develop to develop-9.5 October 2, 2019 15:31
This patch adds a 'freeze' count to the deleted object pool logic. When the current
pool is frozen, no new pools will be created until it is thawed again. This means
that all objects that are deleted during that period are accumulated in the frozen
pool.

This ability is used inside MCB_prepmessage, which is the handler which causes the
engine to enter debug mode and send a message. Doing this prevents corruption of
the deleted object pools stack which appears to occur when the script editor
manipulates menus in the context of a debug-related message.

As the use of freezing the current object pool is only used in this one place it
has no effect on normal running code, only on code which runs in the context of
a debug-related message.
@runrevmark runrevmark removed this from the 9.5.1-rc-1 milestone Oct 3, 2019
@runrevmark
runrevmark changed the base branch from develop-9.5 to release-9.0.5 October 3, 2019 07:48
@runrevmark
runrevmark changed the base branch from release-9.0.5 to develop-9.5 October 3, 2019 07:50
@runrevmark
runrevmark force-pushed the bugfix-22130 branch 2 times, most recently from 02b3d9d to 41fe259 Compare October 3, 2019 07:52
@runrevmark
runrevmark changed the base branch from develop-9.5 to release-9.0.5 October 3, 2019 07:52
@livecodepanos

Copy link
Copy Markdown
Contributor

Tested locally.

@livecode-vulcan review ok 41fe259

@livecode-vulcan

Copy link
Copy Markdown
Contributor

💙 review by @livecodepanos ok 41fe259

livecode-vulcan added a commit that referenced this pull request Oct 3, 2019
[[ Bug 22130 ]] Disable deleted object pool creation whilst debugging

This patch adds a 'freeze' count to the deleted object pool logic. When the current
pool is frozen, no new pools will be created until it is thawed again. This means
that all objects that are deleted during that period are accumulated in the frozen
pool.

This ability is used inside MCB_prepmessage, which is the handler which causes the
engine to enter debug mode and send a message. Doing this prevents corruption of
the deleted object pools stack which appears to occur when the script editor
manipulates menus in the context of a debug-related message.

As the use of freezing the current object pool is only used in this one place it
has no effect on normal running code, only on code which runs in the context of
a debug-related message.
@livecode-vulcan

Copy link
Copy Markdown
Contributor

😎 test success 41fe259

  • try-community-armv6-android-sdk26_ndk16r15: success
  • try-community-armv7-android-ndk16r15: success
  • try-community-arm64-android-ndk16r15: success
  • try-community-x86-android-ndk16r15: success
  • try-community-x86_64-android-ndk16r15: success
  • try-community-js-emscripten-sdk1.35: success
  • try-community-universal-ios-iphoneos13.1: success
  • try-community-universal-ios-iphonesimulator13.1: success
  • try-community-universal-mac-macosx10.9: success
  • try-community-x86-linux-debian8: success
  • try-community-x86_64-linux-debian8: success
  • try-community-x86-win32: success
  • try-community-x86_64-win32: success

@livecodepanos
livecodepanos merged commit ada9656 into livecode:release-9.0.5 Oct 3, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants