Comments (8)
Mmm, I left the code paths as they were, mostly. I'll have a look at it.
from ppsspp.
See also here: http://forums.ppsspp.org/showthread.php?tid=284
for similar error in sceIoWaitAsyncCB
from ppsspp.
Well, I'll restore the changes to their previous state then. Seems that I broke async functions. Can you tell me please if you got the same error back when it worked?
E[HLE]: ERROR - sceIoPollAsync waiting for invalid id 32
What's the emulator behaviour? Does it stop, close suddenly? It just seems strange to me that the little change I did could have something to do with the error message (If it crashes, it would be because I omit one thing it should be there)
from ppsspp.
Don't revert, the change is mostly good. Fix the bugs you introduced instead, I think unknownbrackets has the right diagnosis in his comment - you're throwing away return values that were previously set with RETURN in cases where a HLE function calls another one that you have now converted to use "proper" returns.
If you can't figure it out, reply here and I'll do it for you.
I hope to find a way to reduce these pitfalls :P
from ppsspp.
I understand, the thing is to get an elegant fix. Maybe just returning the value the inner fuction directly in the call... I think I should've called the wrapped function insted, but since the array is not accessible (to do the call with a reference to it), I thought it would have been ugly to use the templated call directly. I have 2 options:
Return directly the value once the function is called.
or
Use the wrapper directly.
An stupid mistake indeed.
It's not really a pitfall. I should have paid more attention.
from ppsspp.
I think the whole fix is basically, in sceIoOpenAsync:
RETURN(sceIoOpen(....));
instead of
sceIoOpen(....)
which throws away the return value.
Unlike the other async functions, it seems sceIoOpenAsync should return the UID directly.
from ppsspp.
I've done just that. I'm very bad explaining things. Really bad.
from ppsspp.
Yes, I didn't see that you had actually done the fix before I posted :)
from ppsspp.
Related Issues (20)
- "Memory stick has been changed?" screen repeatedly HOT 2
- Stack smashing detected message while starting PPSSPP via flatpak on Debian 12 HOT 2
- sharp linear screen scaling HOT 3
- Keep Getting Dumped to Games Splash Screen When Selecting New Game HOT 1
- Keyboard input problem HOT 2
- GOW Ghost of Sparta Vulkan Flickering HOT 5
- Gundam VS Gundam next plus crash on Direct3D 11 mode on specific level while enabling the texture pack. HOT 6
- [Feature request] automatically remove rewind from video encode
- Ys: The Oath in Felghana Crashes when Saving system data HOT 14
- Fast forward button not functioning HOT 5
- silent hill origin torch issue and gliches.
- [Feature] Option to override the display refresh rate HOT 18
- Reconfigure Android Manifest to avoid "Switch to Controllers" nag on oculus quest HOT 2
- GTA 3 LCS: Minor rendering glitch when in-game popup shows HOT 3
- Shortcut thumbnail aspect ratio HOT 3
- The headless testing environment does not load the default config
- Build error with miniupnpc 2.2.8 (changed API for UPNP_GetValidIGD) HOT 10
- A fresh color for icon. HOT 1
- Enable Saving States in RA Hardcore Mode (Just Save, not Load) HOT 3
- [GNU/Linux] [Ridge Racer] PPSSPP core hangs when audio is about to start playing HOT 33
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ppsspp.