SHA256
1
0
forked from pool/kbd
kbd/kbd-1.15.2-setfont-no-cruft.patch
Stanislav Brabec 6fe843799f Accepting request 836428 from home:sbrabec:branches-kbd-prefer-xkb
- Update to version 2.3.0...
- Refresh partially upstreamed kbd-1.15.2-dumpkeys-C-opt.patch
- Drop upstreamed libkeymap-Fix-mk_mapname-for-the-plain-map.patch
- Refresh kbd-1.15.2-setfont-no-cruft.patch and
  kbd-1.15.5-loadkeys-search-path.patch

OBS-URL: https://build.opensuse.org/request/show/836428
OBS-URL: https://build.opensuse.org/package/show/Base:System/kbd?expand=0&rev=132
2020-09-24 00:31:03 +00:00

35 lines
1.2 KiB
Diff

Index: kbd-2.3.0/src/libkfont/kdfontop.c
===================================================================
--- kbd-2.3.0.orig/src/libkfont/kdfontop.c
+++ kbd-2.3.0/src/libkfont/kdfontop.c
@@ -321,6 +321,23 @@ kfont_put_font(struct kfont_context *ctx
if (ret <= 0)
return ret;
+#if 1
+ // We no longer try PIO_FONT* calls.
+ // A former patch even added a possible 5 seconds delay loop here, in an attempt to
+ // gain victory over kdm. We no do this fight, as it can only result in races.
+ // https://bugzilla.novell.com/show_bug.cgi?id=302010
+ //
+ // Two effects:
+ // a) Without the delay loop, we are fast enough to run early.
+ // Moving setfont calls to an earlier point most likly
+ // avoids the race.
+ // b) Without the old compat calls, it should be easier to
+ // fix this in kernel side.
+ //
+ fprintf(stderr, "%s: putfont: %d,%dx%d: failed: %d\n", get_progname(), count, width, height, ret);
+ perror("putfont: KDFONTOP");
+ return -1;
+#else
/* Second attempt: PIO_FONTX */
ret = put_font_piofontx(ctx, fd, buf, count, width, height);
if (ret <= 0)
@@ -328,4 +345,5 @@ kfont_put_font(struct kfont_context *ctx
/* Third attempt: PIO_FONT */
return put_font_piofont(ctx, fd, buf, count, width, height);
+#endif
}