andresdelcampo / GameList_Editor

This repository intends to contribute to GameList Editor development and bring it back to life with the latest systems, etc.
GNU General Public License v3.0
35 stars 0 forks source link

Date format problem when hashing #14

Closed Kugelblitz360 closed 10 months ago

Kugelblitz360 commented 10 months ago

When I try to get additional info on a game, apparently the format of date that the scraper in Emustation uses causes a problem. Also I get a warning that hashing the file could take some time.

image
andresdelcampo commented 10 months ago

Hmm... I may need more info on this one.

I did try changing the date format in Windows and I did not trigger the issue. I also have a region date format of DD/MM/YYYY and had no problems parsing... so I wonder what is triggering it.

Could you please elaborate the steps that lead into the problem? -I gathered that you have German regional settings from the other issue.

Kugelblitz360 commented 10 months ago

Is there any way I can provide more info? Any logging?

andresdelcampo commented 10 months ago

Not likely, unfortunately there is not much logging in this app. I refer to more detailed repro steps -what is the date of the game when you start, where you click, and when the error happens -or maybe if it happens in other operations, etc.

andresdelcampo commented 10 months ago

Ok, if you (or anyone else reading) has any input or further info on how to repro this issue, feel free to post it. I will be happy to nail this one down.

Kugelblitz360 commented 10 months ago

This seems to be related to the "Last Played" Date. If none is set, I do not get the error message.

andresdelcampo commented 10 months ago

That is a very good hint... how does the failing date look like in the gamelist xml? The normal release dates I have are stored like

19890101T000000

but I haven no lastplayed in my sample. It is not editable in the app from what I see, and when read it is parsed like

  Edt_LastPlayed.Text:= FormatDateTime('dd/mm/yyyy hh:mm:ss' , ISO8601ToDate( aGame.ReleaseDate ) )

which hints that the lastplayed date should have been in ISO 8601 format. So it looks like the one you have is not. How did you get that lastplayed date generated?

Kugelblitz360 commented 10 months ago

Generated by Batocera (EmulationStation fork)

        <path>./James Bond 007 - Licence to Kill.zip</path>
        <name>007: Licence to Kill</name>
        <desc>A "James Bond" action/arcade game based on the movie with the same name. Your aim is to avenge the death of Felix Leiter, who was killed by the drug baron Sanchez.

Technically the game consists of several different vertical scrolling action sequences. In each stage you must fly, drive or walk through a preset terrain. While doing that, you have to shoot enemies, avoid their shots and collect items (mainly ammunition). Some levels rely more on shooting, while others test your reflexes.</desc>
        <image>./images/James Bond 007 - Licence to Kill-image.png</image>
        <video>./videos/James Bond 007 - Licence to Kill-video.mp4</video>
        <marquee>./images/James Bond 007 - Licence to Kill-marquee.png</marquee>
        <thumbnail>./images/James Bond 007 - Licence to Kill-thumb.png</thumbnail>
        <rating>0.45</rating>
        <releasedate>19890101T000000</releasedate>
        <developer>Domark</developer>
        <publisher>Quixel</publisher>
        <genre>Action</genre>
        <players>1</players>
        <playcount>1</playcount>
        <lastplayed>20210209T135123</lastplayed>
        <md5>aed105f162e6bbf98a6b31dcbd87d1ef</md5>
        <gametime>152</gametime>
        <lang>en</lang>
    </game>
Kugelblitz360 commented 10 months ago

After clicking on "More Infos"

image
andresdelcampo commented 10 months ago

Perfect repro! Thanks! On it.

andresdelcampo commented 10 months ago

Oh wow... it was in front of me even in this thread... I even pasted the code with the bug! It was taking the release date instead of the last played date for the conversion!. After fixing it, it no longer triggers the error for the game you passed me and shows the last played date correctly. I will be publishing a patch shortly.

andresdelcampo commented 10 months ago

The patch is public, as GameList Editor 2023.12. Looks like you uncovered a long living bug in the app... now squashed. I did not want to call it 2024 due to being just a single word change from the previous one (no kidding) and it would take far more time to change all labels to 2024 across languages, etc.

Kugelblitz360 commented 10 months ago

THANK YOU!

andresdelcampo commented 10 months ago

Thank you for reporting it :). And happy new year!