RetroFE forums

General Category => General Discussion & Help => Topic started by: RfsVieira on March 07, 2022, 10:10:51 PM

Title: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 07, 2022, 10:10:51 PM
Hello, i´m being testing retrofe version after big update, Gstremer and SDL, as you know it crash, i know you cant replic it because you using linux and for what i googlit is an win10 issue / problably, as googling found another teorie  of buffering (STATUS_STACK_BUFFER_OVERRUN)
making tests discover that problem is in gstcoreelements.dll and gstreamer-1.0-0.dll as they are connected (the call for ucrtbase.dll comes from them)
if you take version 1.20 gstcoreelements.dll and overwrite in retrofe(core folder), it will not have video and will not crash ever, so i think maybe there´s some problem in video code!!?
As this one man dev, im trying help all comunity.
Here  i add prints screens of what i get, hope it can help, if i can make another tests please fell free ask, i will try, i started retrofe.exe with vs 2019.
gstream v 1.18.3 has an issue for win32, that has been correct on version 1.18.4, and they released this year Fev2022 versio 1.18.6.
i  think this guys here ignore ucrtbase.ddl to open if prog call (https://social.msdn.microsoft.com/Forums/windows/en-US/522946b7-cb39-43b3-868d-ae9bde1a458b/application-crash-ucrtbasedll?forum=winforms) (don' t know if is compatible/possible for you add it)
But all my teories can be wrong and its there  a simple way for you solution it :D.
im new in it, im not programmer so, cant help to much :(
will love know more of code for this not be one man work.
Have a nice day, and thanks for all
 
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: JonahUK on March 10, 2022, 08:49:01 AM
Tested the latest version on github, still crashing.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 11, 2022, 08:04:20 AM
I know. I'm working on getting rid of all the memory leaks first, because those indicate improper handling of memory. These crashes are probably caused by access of an already deleted piece of memory (that's usually the only reason a program crashes rather than locks up), so cleaning up memory usage is a first step. There appear to be some issues with the animation memory, so it's quite possible that some themes are crashing due to the animations on their videos. That would explain why some themes are affected while others are not. It's also possible these issues reside in the new Windows gstreamer or SDL libraries; that would explain why they happen under Windows, but not on Linux. Perhaps it's just a gstreamer plugin that's causing the problems; I'm slowly sorting out the mess, but it takes time. I already spent over 40 hours debugging this over the past few weeks.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 11, 2022, 01:42:47 PM
thanks for answer, and been working on it, if you need any test just say, if i can i test and try. i found another issue i will add new topic, as you are answer me i will cont. try helping all community
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 11, 2022, 03:28:54 PM
Looking at your trace, it does appear to be a crash WITHIN the gstreamer library. I've tried upgrading the entire package to 1.20, but that didn't seem to have any impact. I'm not quite sure how to get this fixed though; the old library also had issues with memory leaks after all. I'll give this some more thought.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 11, 2022, 04:14:27 PM
Hi, for what I tested is video issues, buffer don't know, our animation as you say, gstreamer has multivideo(code) , don't ibiw if that will help for matrix animation videos as the layout I'm testing.
Why I think is video/animation as u say issues? Because what I reported before, if I overwrite version 1.20 gstcorelements.dll. As it isn't compatible with 1.18 it will not charge the videos will do all anination crating matrix but all black and will never crash.
I'm not a programmer, I program in past but stopped about 13yrs so I'm rush, I understand +- wen see, but don't know how to..
And have some problems as it doesn't have //legend I lose many hours try understand what the files code do 😅
Thanks for help and answer
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 11, 2022, 06:40:22 PM
How are you debugging this btw? It's not like I don't have a Windows setup, but I'm not familiar with debugging under Windows.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 11, 2022, 06:47:25 PM
I have many problems trying debug it bcs it only creates retrofe.exe I start the retrofe with vs 2019. If I create retrofe.exe debug  file that I can create it will not open bcs isn't directly connected to the build. As you do all in Linux, for windows visual studio doesn't have full build structure only the exe release file. Probably is possible create vs 2019 full strocture pack but I don't know how. I understand tht you alredy have all core created for windows and the commun files strocture. . And it doesn't copy all files creating the build from gstreamer directory,. I tested copying the dlls from the lib ex gstream,1.18.6 and 1.20 and bug crash still there. I think is 187 dlls files. For gstreamer
Resuming as the full retrofe root isn't in the pack the source creates only retrofe.exe. I have to run retrofe.exe from the pack. After phyton script copy all files creating the build.
Sorry I have a litle problems with English 😞, for what I read this windows ucrtbase.dll is a response from windows probably isn't the real issues
If was possible all build be
 created from source will be great because will can do the debug before release.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 12, 2022, 11:56:03 PM
Hello updating with 5 prints, maybe wen this class are calling are in conflit with code?!
seems some are calling in64... it juld be x86/w32?!
willl add another error print off h264 encounder faling
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 12, 2022, 11:57:11 PM
Cont.. off  the prints, dont know if it will help, hope so.
All im posting canbe wrong, but is what i get from VS 2019.
Thanks
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 13, 2022, 09:31:16 PM
memory crash print
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 14, 2022, 01:32:12 AM
I think i manage the debug on windows, see if this help you, now im getting directly supposedly error from source... i think... as im creating debug file inside vs 2019
do you know whts the line to create debug file with the pdb file?

this is for normal release------   cmake --build RetroFE/Build --config Release

i think is one for debug, im asking it bcs with  VS 2019 i have always an skipped file, although if i created the release i have tht skipped file to and the release file is same size the one i   created with the line above.
Tks

Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 16, 2022, 09:21:42 AM
OK, so so far we have several crashes within the gstreamer library itself, which apparently is an issue under Windows, but not under Linux. Very odd indeed.
We've also got a null point issue in the code; I'll give that a closer look as well. Apparently it managed to create a list without a selected item somehow; perhaps an issue with an empty list?
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 16, 2022, 02:56:31 PM
Hi,
That test it has only 2 sys and 1 game per sys. But can be a false error as I hade to trick to get it started with the source. 😩
Running out of vs 2019 it enter in the sys and scroll until crash as alredy reporter issue, running from VS 2019 it crash wen try enter sys, start retrofe, show systems, on try enter one of them crash. And gives tht last print

Can you downgrade gstreamer to test if is sld2 issue?
Our is possible add that 1st link of code to retrofe. Cpp our gstreamer vídeo. Cpp to on call ucrlbase. Dll ignore tht call? It will not be a solution but will not crash retrofe I think... At least until you find how to solutions it..
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 16, 2022, 06:33:06 PM
I'd have to spend some time setting up a separate virtual machine to compile it that way. Gstreamer doesn't seem to be willing to have two versions installed on the system, and so I have to break down my current installation in order to compile it using the old gstreamer version (if I can remember which version I used back then). What doesn't help is that when I compiled this I was still on bitbucket; my old repository doesn't exist anymore.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 16, 2022, 06:53:41 PM
Hi, for whts here https://github.com/phulshof/RetroFE/tree/13f1b7aaab37b34f6cce732166fd7e6e0d002df9
Was gstreamer 1.4.0.
On windows I install version 1.18.3, copy folder, then unistall and nstalled 1.18.6, copy folder same to 1.20. Then wen want to compile just rename the version I want to the default folder gstreamer name. Then I made checked 1.18.3 dlls and made a backup of tht dlls for versions 1.18.6 and 1.20. So wen I was testing if I compile with version 1.20 e copy to core all dlls from bin folder and gstreamer 1 replacing it for tests.
GStreamer 1.18.3 has issues for compile on win32. They only fixed on 1.18.4 and for some reason in fev2022 they released 1.18.6 stable version. I don't know if on Linux u can make tht trick of change folder names....
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 16, 2022, 07:02:34 PM
The problem doesn't exist on Linux; if it was I would have fixed it a long time ago. It may very well be an issue with one of the plugins actually. I noticed that 1.4.0 used a lot of internal video codecs while the latest releases use separate audio/video plugins.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 16, 2022, 09:48:33 PM
VM problably u can have gpu problems ...
the big issue is here wen they update and add ucrtbase.dll i think...

see if it has any logic/sense for retrofe https://gstreamer-devel.narkive.com/zsU8NbAp/crash-when-trying-to-stop-pipeline-containing-encodebin

maybe on scroll / next page it for some reason the  <video> element is set to load empty or about:blank, a player is still
created, but no pipeline is loaded and crash?!
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 17, 2022, 05:49:05 PM
Hmmm, that might be a possible reason. I don't believe the old code stopped the video before deleting it, and the current code does that for over 70 videos in some of the themes. Sometimes it's just a matter of increasing chances when you do the same thing over and over again, each with a small chance of crashing the program. It's a rather old bug though; would that still be part of the current gstreamer code?
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 17, 2022, 06:17:24 PM
Well for now I'm stack with the tests and investigating...
Probably only can do more test directly debugging retrofe.exe and source if JonahUK our P1ch3 help with layout adaptation to retrofe default layout (aeon) for more tests,  as their theam made a much complexx layout and was the 1st alerting this issues...  until now I'm making cheating/tricky for tests and results can be wrong 😔. I alredy know how debug on windows retrofe build with the git. It can crash on 1st page change our in 10 page change... As it isn't same is difficult find the issue(s).
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 17, 2022, 07:23:20 PM
I'll see if I can install gstreamer 1.4, compile with that, and run the latest code in the old core directory with new SDL libraries. That should tell us something about the cause at least.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 18, 2022, 12:26:24 AM
Great, waiting to test it to :)
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: xboxiso on March 18, 2022, 06:32:35 PM
Same here. Available to test when ready...
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 20, 2022, 03:07:17 PM
OK, give this one a try and let me know. This should be used with the OLD core directory, so using the old releases of gstreamer and SDL!
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 20, 2022, 09:17:04 PM
hello, my 1st test it is running very well and fast, didn´t crash, will continue doing test and report.
thanks
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 21, 2022, 07:54:42 AM
Hello
Found an major issue when you GameExit, all the Items menu come back to alpha="1", problably some page update?!
 Still not crash
Thanks
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 21, 2022, 08:33:16 AM
Can you zip up your test setup, and wetransfer (or something) it to me via PM? I'd like to see what you're seeing so I can analyze the problem.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 21, 2022, 08:43:51 AM
Wen back home after work will try do a video.
Thanks
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: JonahUK on March 21, 2022, 10:31:59 AM
https://imgur.com/a/Db9bCL6

Per above comment.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 21, 2022, 11:36:08 AM
Thanks JonahUK
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 21, 2022, 03:02:42 PM
I'd like a small test setup, so I can reproduce the problem. It helps me to solve the problem.

Sent from my SM-G781B using Tapatalk

Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 21, 2022, 03:25:45 PM
How can I do tht test?
Just tell tht I will try
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 21, 2022, 05:33:04 PM
Nevermind; it's a problem in the current code. I can reproduce the problem under Linux, so I'll have a look as soon as possible to fix this.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 21, 2022, 05:34:49 PM
I talk about it, problably the transitions between pages?! Call back makes some reset/clean last?!
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 22, 2022, 08:50:06 AM
I've already fixed that problem locally, but I'm still looking into a control issue where pressing next/previous game just once (and briefly) will make it scrolls two games ... every time. The only way I can currently go the next game is by pressing next, next, previous, previous in quick succession (it will scroll 3 forward and 2 back...). As soon as I fix that I'll create a new exe for you to test.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 22, 2022, 12:24:59 PM
Thanks, is strange the new scrowling  issue, isnt reading control?!
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 22, 2022, 06:13:51 PM
Never mind; this appears to be an issue on my Linux distribution, possibly due to the latest SDL libraries there. I'll sort that out at a later time. Let me know if this works better for you.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 22, 2022, 09:30:44 PM
hello, all working with my tests, thanks a lot.
anything you need from me for tests just send me pm.
thanks again
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 22, 2022, 11:15:23 PM
You're welcome. I'll have another look to see if there are actual advantages to using the latest (but apparently less stable) gstreamer releases or if RetroFE should switch back to 1.4.0. For now I can compile for both.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 24, 2022, 04:15:09 PM
It looks like 1.20 is significantly faster than 1.4, so I'll work on creating a release that supports both, and compile for both for the time being. Hopefully this will be resolved in the future.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 24, 2022, 04:26:58 PM
Nice, I tested with 1.20, compile and replaced core gstreamer dlls, and it crashed. Same as 1.18.3..
Now it is much faster scrolling/page change, loading videos/art...
If can be stable. And faster, is great as all community will win, and retrofe grow in retro world.. We are getting the time to have a stable release for all world 😁
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 24, 2022, 04:30:12 PM
Core theme play the same video about 70 times or so; gstreamer 1.20 doesn't seem to agree with that anymore than 1.4 does. Most other themes I've tried don't seem to have this issue. As such, I'll provide both 1.120 and 1.4 in the near future; that way people can use all the features while making a choice which version of gstreamer fits their needs.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 24, 2022, 04:42:18 PM
So we will have 2 compile options? Our you will release the exe every time? I'm asking it bcs without source I can't debug it on windows.
Thanks
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: xboxiso on March 24, 2022, 05:56:48 PM
I would like to test the retrofe.exe posted on the 22nd. Which version of RetroFE should I test this with? 0.10.21 or 0.10.7?
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 24, 2022, 05:59:27 PM
0.10.7
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 24, 2022, 07:18:43 PM
So we will have 2 compile options? Our you will release the exe every time? I'm asking it bcs without source I can't debug it on windows.

Compile is up to you of course; I will compile for both gstreamer versions, and include a core directory for both versions.
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: RfsVieira on March 24, 2022, 07:26:18 PM
Yes is tht if u Inc a core directory I can work if some occur errors and report again 😀.
Alredy started making a refresh on Cpp, with some tutorials, but I think will not be enough to help directly with code 😩.
But will try my best making the reviews
Tks for all
Title: Re: RetroFE Crash After 10.7 calling ucrtbase.ddl
Post by: Pieter Hulshoff on March 24, 2022, 08:14:14 PM
Some extra coding help would certainly be helpful. It's not the most complex code around, so it should be understandable with a bit of study. After all: I didn't start this project either.