[GH-ISSUE #3301] Crashing if you set cpu speed to 1000 #1376

Closed
opened 2026-03-17 22:37:18 +03:00 by kerem · 10 comments
Owner

Originally created by @vsub on GitHub (Aug 21, 2013).
Original GitHub issue: https://github.com/hrydgard/ppsspp/issues/3301

Don't know who will actually set it to 1000 but it crashes if you hit ok while 1000 is selected
Also if you manually set it to 1000,when you try to enter Game Settings=>System ppsspp will crash

Originally created by @vsub on GitHub (Aug 21, 2013). Original GitHub issue: https://github.com/hrydgard/ppsspp/issues/3301 Don't know who will actually set it to 1000 but it crashes if you hit ok while 1000 is selected Also if you manually set it to 1000,when you try to enter Game Settings=>System ppsspp will crash
kerem closed this issue 2026-03-17 22:37:24 +03:00
Author
Owner

@hrydgard commented on GitHub (Aug 21, 2013):

Hmm that's really bad.

Yeah, will have to do a 0.9.1 sooner than I expected...

<!-- gh-comment-id:23019809 --> @hrydgard commented on GitHub (Aug 21, 2013): Hmm that's really bad. Yeah, will have to do a 0.9.1 sooner than I expected...
Author
Owner

@thedax commented on GitHub (Aug 21, 2013):

Call stack of the crash(it's the same crash for both ways of triggering it):

>   PPSSPPWindows.exe!UIContext::GetScissorBounds() Line 82 C++
    PPSSPPWindows.exe!UI::ViewGroup::Draw(UIContext & dc) Line 103  C++
    PPSSPPWindows.exe!UI::ScrollView::Draw(UIContext & dc) Line 600 C++
    PPSSPPWindows.exe!UI::ViewGroup::Draw(UIContext & dc) Line 99   C++
    PPSSPPWindows.exe!UI::ViewGroup::Draw(UIContext & dc) Line 99   C++
    PPSSPPWindows.exe!UIScreen::render() Line 37    C++
    PPSSPPWindows.exe!ScreenManager::render() Line 86   C++
    PPSSPPWindows.exe!NativeRender() Line 565   C++
    PPSSPPWindows.exe!Core_RunLoop() Line 137   C++
    PPSSPPWindows.exe!Core_Run() Line 180   C++
    PPSSPPWindows.exe!TheThread(void * __formal) Line 135   C++
<!-- gh-comment-id:23020749 --> @thedax commented on GitHub (Aug 21, 2013): Call stack of the crash(it's the same crash for both ways of triggering it): ``` > PPSSPPWindows.exe!UIContext::GetScissorBounds() Line 82 C++ PPSSPPWindows.exe!UI::ViewGroup::Draw(UIContext & dc) Line 103 C++ PPSSPPWindows.exe!UI::ScrollView::Draw(UIContext & dc) Line 600 C++ PPSSPPWindows.exe!UI::ViewGroup::Draw(UIContext & dc) Line 99 C++ PPSSPPWindows.exe!UI::ViewGroup::Draw(UIContext & dc) Line 99 C++ PPSSPPWindows.exe!UIScreen::render() Line 37 C++ PPSSPPWindows.exe!ScreenManager::render() Line 86 C++ PPSSPPWindows.exe!NativeRender() Line 565 C++ PPSSPPWindows.exe!Core_RunLoop() Line 137 C++ PPSSPPWindows.exe!Core_Run() Line 180 C++ PPSSPPWindows.exe!TheThread(void * __formal) Line 135 C++ ```
Author
Owner

@thedax commented on GitHub (Aug 21, 2013):

Additional info: "Run-Time Check Failure #2 - Stack around the variable 'temp' was corrupted."

<!-- gh-comment-id:23022856 --> @thedax commented on GitHub (Aug 21, 2013): Additional info: "Run-Time Check Failure #2 - Stack around the variable 'temp' was corrupted."
Author
Owner

@vsub commented on GitHub (Aug 21, 2013):

It seems to be newui related

<!-- gh-comment-id:23024135 --> @vsub commented on GitHub (Aug 21, 2013): It seems to be newui related
Author
Owner

@thedax commented on GitHub (Aug 21, 2013):

Yes, I know.

<!-- gh-comment-id:23024446 --> @thedax commented on GitHub (Aug 21, 2013): Yes, I know.
Author
Owner

@unknownbrackets commented on GitHub (Aug 21, 2013):

I'm sure the bug is here:

void PopupSliderChoice::Draw(UIContext &dc) {
    Choice::Draw(dc);
    char temp[4];
    sprintf(temp, "%i", *value_);
    dc.Draw()->DrawText(dc.theme->uiFont, temp, bounds_.x2() - 12, bounds_.centerY(), 0xFFFFFFFF, ALIGN_RIGHT | ALIGN_VCENTER);
}

4 just isn't very long.

-[Unknown]

<!-- gh-comment-id:23024618 --> @unknownbrackets commented on GitHub (Aug 21, 2013): I'm sure the bug is here: ``` c++ void PopupSliderChoice::Draw(UIContext &dc) { Choice::Draw(dc); char temp[4]; sprintf(temp, "%i", *value_); dc.Draw()->DrawText(dc.theme->uiFont, temp, bounds_.x2() - 12, bounds_.centerY(), 0xFFFFFFFF, ALIGN_RIGHT | ALIGN_VCENTER); } ``` 4 just isn't very long. -[Unknown]
Author
Owner

@thedax commented on GitHub (Aug 21, 2013):

Aha, that would explain it. Perhaps 32 would be more reasonable to allow room for growth?

<!-- gh-comment-id:23025427 --> @thedax commented on GitHub (Aug 21, 2013): Aha, that would explain it. Perhaps 32 would be more reasonable to allow room for growth?
Author
Owner

@unknownbrackets commented on GitHub (Aug 21, 2013):

An unsigned 32-bit integer can be 10 characters long, so that'd be 11. But sure, 32 should be a nice reasonable safe value.

-[Unknown]

<!-- gh-comment-id:23025560 --> @unknownbrackets commented on GitHub (Aug 21, 2013): An unsigned 32-bit integer can be 10 characters long, so that'd be 11. But sure, 32 should be a nice reasonable safe value. -[Unknown]
Author
Owner

@thedax commented on GitHub (Aug 21, 2013):

Thanks for spotting that, @unknownbrackets.

<!-- gh-comment-id:23025886 --> @thedax commented on GitHub (Aug 21, 2013): Thanks for spotting that, @unknownbrackets.
Author
Owner

@thedax commented on GitHub (Aug 21, 2013):

I think this can be closed now.

<!-- gh-comment-id:23036203 --> @thedax commented on GitHub (Aug 21, 2013): I think this can be closed now.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/ppsspp#1376
No description provided.