Bug 438779 - Kpat golf game quits when near end of game
Summary: Kpat golf game quits when near end of game
Status: RESOLVED FIXED
Alias: None
Product: kpat
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Fedora RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: Stephan Kulow
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-06-17 00:32 UTC by Brian Kaye
Modified: 2023-02-28 19:27 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Brian Kaye 2021-06-17 00:32:59 UTC
SUMMARY
When playing the golf game if one is near the end of the game and you can win, kpat quits.

STEPS TO REPRODUCE
1. run kpat
2. play golf
3. 

OBSERVED RESULT
kpat quits near end of game that is winnable with a few cards ( 2 or 3) left.

EXPECTED RESULT
Win game and be able to deal a new game or switch games. This happens with all other games.

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: 5.21.5
(available in About System)
KDE Plasma Version: 5.21.5
KDE Frameworks Version: 
Qt Version: 

ADDITIONAL INFORMATION
kpat version:20.12.2

Ran it under gdb. Here are the messages when it quit.

[New LWP 257880]
[LWP 257880 exited]
[New LWP 257881]
[LWP 257881 exited]
[New LWP 257882]
[LWP 257882 exited]
Error reading the board at line No. 2!
[LWP 257690 exited]
[LWP 257689 exited]
[LWP 257688 exited]
[LWP 257687 exited]
[LWP 257686 exited]
[LWP 257849 exited]
[LWP 257848 exited]
[LWP 257847 exited]
[LWP 257846 exited]
[LWP 257685 exited]
[LWP 257681 exited]
--Type <RET> for more, q to quit, c to continue without paging--
[Inferior 1 (process 257681) exited with code 0377]


From the system journal:

Jun 16 19:26:22 mars plasmashell[184261]: Error reading the board at line No. 2!

Jun 16 19:26:22 mars systemd[2742]: app-org.kde.kpat-e3642ec25b7d454c90a03a7287f31aac.scope: Deactivated successfully.
Jun 16 19:26:22 mars systemd[2742]: app-org.kde.kpat-e3642ec25b7d454c90a03a7287f31aac.scope: Consumed 7min 40.971s CPU time.

Jun 16 19:26:22 mars kwin_x11[2840]: qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 58644, resource id: 71303174, major code: 15 (QueryTree), minor code: 0

Jun 16 19:26:22 mars kwin_x11[2840]: qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 58688, resource id: 18877072, major code: 18 (ChangeProperty), minor code: 0
Comment 1 Albert Astals Cid 2021-06-17 20:11:42 UTC
Which black-hole-solver version are you using?

Could you give us a game number when this happens?
Comment 2 Brian Kaye 2021-06-18 12:21:57 UTC
Can't tell game number after kpat quits. Its not just the game that quits, its all of kpat.

How do I tell which version of the solver being used? There is no obvious add-on. I have tried once without the solver and it still happened. Maybe it comes in kf5-kcoreaddons.x86_64  version  5.82.0

Another error message when kpat is started:

kf.coreaddons: "2365-1307-background" is too large to be cached.
Comment 3 Brian Kaye 2021-06-18 13:35:28 UTC
Tried starting kpat from a Konsole session and running golf game. Played 5 or 6 games winning some. No failure. Then tried starting from the Application Menu and the first game I tried quit as per the bug description. The command that gets run is "kpat -qwindowtitle %c %u". Tried running without the "-qwindowtitle". No change. Tried running in terminal from the Application Menu. It still failed.

Tried adding "--gametype golf" to the Application Menu and it did NOT fail the one time I tried it.

Tried without "--gametype golf" and ran golf as the first game from the Application Menu and it did NOT fail. But when I tried a second game of golf it DID fail.

More confusing still
Comment 4 Albert Astals Cid 2021-06-19 11:35:37 UTC
> Can't tell game number after kpat quits. Its not just the game that quits, its all of kpat.

I understand that, but you can check the game number before?

> How do I tell which version of the solver being used?

You'll have to ask your distribution for that, in my distribution it's 
$ pacman -Q black-hole-solver 
black-hole-solver 1.10.1-1

I don't think starting from command line or not should matter, what's happening is that the solver gets confused and explodes, so it's really related to the game number + moves you've made
Comment 5 Brian Kaye 2021-06-19 14:03:37 UTC
The black-hole-solver is not installed on my system. It is available (black-hole-solver.x86_64  1.10.1-2.fc34). So the solver I am using must be built in.  Ran from the command line again. First game worked second game number 1661658864 failed. Got the error message "Error reading the board at line No. 2!". This message occurs with every failure. I did a number of undos during this game.
Comment 6 Albert Astals Cid 2021-06-19 14:34:45 UTC
> The black-hole-solver is not installed on my system. It is available (black-hole-solver.x86_64  1.10.1-2.fc34). So the solver I am using must be built in. 

That's not possible, that "Error reading the board at line" only happens when using the black-hole-solver.

Would it be possible that you have multiple kpat installed? i.e distribution vs flatpak? that would maybe explain why you see the error happening when launching from one place and not from the other?
Comment 7 Brian Kaye 2021-06-19 21:14:54 UTC
I do see that error message when I run from the application menu. It shows up in the system journal as per the initial post. In the case of running from the application menu the error occurs after the first time I run golf. When run from a terminal it fails after the second. 

I do not remember ever installing the black-hole-solver either with flatpak or dnf.
Comment 8 Albert Astals Cid 2021-06-20 09:52:10 UTC
> I do not remember ever installing the black-hole-solver either with flatpak or dnf.

I meant you may have installed kpat with flatpak?

Can you confirm kpat is or is not listed in the output of 
$ flatpak list
?
Comment 9 Brian Kaye 2021-06-20 10:44:13 UTC
"flatpak list" gives null output as root or normal user.
Comment 10 Albert Astals Cid 2021-06-20 17:07:11 UTC
Ok.

Could you please give some more info about your setup?

You mention redhat rpms but i don't think RHEL ships KDE packages anymore, or does it?
Comment 11 Brian Kaye 2021-06-20 18:30:51 UTC
I  am running Fedora Core 34. Everything up to date for the most part. I run an old version of Firefox( and an up to date one), and an up to date Waterfox. My machine is a Lenovo P50 laptop with 48G of memory, a 4K screen, a 512G Samsung SSD and a 512K hard drive.

Using grub2 I multi-boot Fedora with Windows 10, gparted, Kubuntu, and Lenovo Diagnostics which I use rarely. I upgrade from one version of Fedora to another using dnf system-upgrade. The kde packages are up to date as far as the fedora Red Hat distribution is concerned.

Where does that error message come from since I do not have the black-hole-solver installed?
Comment 12 Albert Astals Cid 2021-06-20 22:39:04 UTC
Rex, Neal, can you confirm if fedora kpat pacakges are built with black-hole-solver or not?
Comment 13 Brian Kaye 2021-06-21 03:27:19 UTC
If you run strings against /usr/bin/kpat

you see 

black_hole_solver_create
black_hole_solver_enable_rank_reachability_prune
black_hole_solver_enable_wrap_ranks
black_hole_solver_enable_place_queens_on_kings
black_hole_solver_config_setup
black_hole_solver_read_board
black_hole_solver_setup
black_hole_solver_set_max_iters_limit
black_hole_solver_run
black_hole_solver_init_solution_moves
black_hole_solver_get_next_move
black_hole_solver_free
Comment 14 Rex Dieter 2021-06-21 16:49:28 UTC
I can confirm kpat is build with black-hole-solver support, from build.log in question:

...
-- Checking for module 'libblack-hole-solver'
--   Found libblack-hole-solver, version 1.10.1
...
Comment 15 Albert Astals Cid 2021-06-21 21:36:24 UTC
ok, at least that makes sense :)

I still can't reproduce the crash but i don't know how to play Gold so that isn't really surprising.

Adding Shlomi let's see if he has an idea of what may be wrong.
Comment 16 Brian Kaye 2021-06-22 02:39:15 UTC
The game is simple. Most games cannot be won. All you do is play cards from the draw pile and make sequences up or down regardless of suit. be careful for the boundary cards (kings and aces).
Comment 17 Brian Kaye 2021-06-22 10:29:30 UTC
The package libblack-hole-solver1l 1.10.1-2.fc34  is installed on my system but the package black-hole-solver is not.
Comment 18 Stephan Kulow 2023-02-28 19:27:49 UTC
The backtrace does not give enough informations, but let's assume this is fixed in later revisions of the solver