code logs -> 2018 -> Thu, 11 Oct 2018< code.20181010.log - code.20181012.log >
--- Log opened Thu Oct 11 00:00:43 2018
00:09 Degi [Degi@Nightstar-v0f4s6.dyn.telefonica.de] has quit [Connection reset by peer]
00:38 Kindamoody is now known as Kindamoody[zZz]
01:05 Derakon[AFK] is now known as Derakon
01:26 Reiv [NSkiwiirc@Nightstar-ih0uis.global-gateway.net.nz] has joined #code
01:26 mode/#code [+o Reiv] by ChanServ
01:37 himi [sjjf@Nightstar-1drtbs.anu.edu.au] has quit [Ping timeout: 121 seconds]
01:53 himi [sjjf@Nightstar-vo9.7ns.56.130.IP] has joined #code
01:54 mode/#code [+o himi] by ChanServ
03:21 himi [sjjf@Nightstar-vo9.7ns.56.130.IP] has quit [Ping timeout: 121 seconds]
03:21 himi [sjjf@Nightstar-1drtbs.anu.edu.au] has joined #code
03:21 mode/#code [+o himi] by ChanServ
04:02 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
04:02 mode/#code [+qo Vornicus Vornicus] by ChanServ
05:04 Derakon is now known as Derakon[AFK]
05:09 Vorntastic [uid293981@Nightstar-6br85t.irccloud.com] has joined #code
05:09 mode/#code [+qo Vorntastic Vorntastic] by ChanServ
05:10 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
06:04 himi [sjjf@Nightstar-1drtbs.anu.edu.au] has quit [Ping timeout: 121 seconds]
06:41
<&McMartin>
Man, legacy code
06:41
<&McMartin>
I'm tracing through the SDL video code for managing the window size, and the following values are part of the canvas struct, whether directly or indirectly
06:41
<&McMartin>
width, real_width, actual_width, draw_buffer_width, canvas_width, visible_width, canvas_physical_width
06:42
<&McMartin>
Note that under most code paths and configurations real_width and actual_width are not actually the same value
06:51
<&McMartin>
Oh yeah, there's also custom_width, but that's unrelated to rendering and the user can't actually customize it at runtime
07:18 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
07:18 mode/#code [+qo Vornicus Vornicus] by ChanServ
07:19 Vorntastic [uid293981@Nightstar-6br85t.irccloud.com] has quit [[NS] Quit: Connection closed for inactivity]
07:40 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection reset by peer]
07:51 Vorntastic [uid293981@Nightstar-6br85t.irccloud.com] has joined #code
07:51 mode/#code [+qo Vorntastic Vorntastic] by ChanServ
08:47
<&jeroud>
Yay Legacy Code.
08:48
<&jeroud>
SDL is a disaster. I believe (you'd know much better than me) that SDL2 is less of a disaster.
09:57
<&McMartin>
This isn't SDL itself, it's code that's using it
09:58
<&McMartin>
SDL1 in fact seamlessly solves the problem I think five of those widths are attempting to address
09:58
<&McMartin>
(That of wanting a fullscreen display resolution that the underlying OS does not support)
09:58
<&jeroud>
Ah.
09:59
<&McMartin>
This issue cannot even be stated in SDL2's display model, because SDL2 does not provide a framebuffer
10:06
<&McMartin>
There is a legit need for three different widths when tracking multiple simultaneous scaled aspect-corrected nonsquare-pixel screens.
10:14 Degi [Degi@Nightstar-e4puca.dyn.telefonica.de] has joined #code
10:31 Kindamoody[zZz] is now known as Kindamoody|afk
10:51
<&jeroud>
Having thought only briefly about the problem, I'm a little surprised that it's only three.
11:33 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has joined #code
12:41 Vorntastic [uid293981@Nightstar-6br85t.irccloud.com] has quit [[NS] Quit: Connection closed for inactivity]
13:03 gnolam_ [lenin@Nightstar-ego6cb.cust.bahnhof.se] has joined #code
13:04 gnolam [lenin@Nightstar-ego6cb.cust.bahnhof.se] has quit [Ping timeout: 121 seconds]
13:26 Vorntastic [uid293981@Nightstar-6br85t.irccloud.com] has joined #code
13:26 mode/#code [+qo Vorntastic Vorntastic] by ChanServ
13:31 gnolam_ is now known as gnolam
13:32 mode/#code [+o gnolam] by ChanServ
16:10 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
16:10 mode/#code [+qo Vornicus Vornicus] by ChanServ
16:21 Degi [Degi@Nightstar-e4puca.dyn.telefonica.de] has quit [Connection reset by peer]
17:13 * ToxicFrog pokes lanterna and/or sshd with a stick.
17:13
<&ToxicFrog>
This is weird.
17:13
<&ToxicFrog>
So, at startup lanterna (curses++ for java, basically) does a bunch of terminal initialization stuff, which includes sending DSR 6 (cursor position report) to the terminal and reading the result to figure out the terminal size.
17:14
<&ToxicFrog>
At the point where it does this, the terminal is supposed to already be in noecho mode, so this is invisible to the user.
17:14
<&ToxicFrog>
If I run a program using lanternal locally, this works fine.
17:15
<&ToxicFrog>
If I ssh into my work desktop or my personal laptop and do the same thing, ditto.
17:15
<&ToxicFrog>
If I ssh into my server, the reply to the DSR gets echoed to the terminal and then once it finishes starting up a bunch of other stuff is busted.
17:15
<&ToxicFrog>
If I ssh to the server and then from there into the laptop and then try it, it still works fine.
17:16
<&ToxicFrog>
Not tried yet: logging in to the server at its physical tty and running it there.
17:16
<@Tamber>
hooray terminfo muckups?
17:17
<&ToxicFrog>
But so far the common thread is that if it runs on the server, it's busted, and on anything else, even via ssh, it works fine.
17:17
<&ToxicFrog>
Changing TERM doesn't seem to help, and everything else on the server that does curses-style stuff like tmux, weechat, htop, etc works fine.
17:18
<&ToxicFrog>
So I don't think the problem is terminfo.
17:18
<&ToxicFrog>
They're all running the same version of lanterna, clojure, etc because that's all set in project.clj.
17:18
<&ToxicFrog>
They don't all have the same JRE version.
17:20
<@Tamber>
hmm
17:21
<&ToxicFrog>
(it's two different 1.8 versions on the desktop and the server, 1.10 on the laptop)
17:21 Vorntastic [uid293981@Nightstar-6br85t.irccloud.com] has quit [[NS] Quit: Connection closed for inactivity]
17:21
<&ToxicFrog>
They all have the same Leiningen version.
17:22
<&ToxicFrog>
Oh, and this happens on the server whether or not it's being run inside tmux.
17:22
<&ToxicFrog>
And they all have $LINES and $COLUMNS set correctly.
17:34
< [R]>
Seems like they wouldn't read those values anyways though
17:35
<&ToxicFrog>
[R]: I was wondering if something was going on like, say, it reads those at startup and only falls back to DSR6 if they aren't set.
17:35
< [R]>
Fair enough
17:36
< [R]>
Can you copy the desktop JDK/JRE over to the server (even just into your ~) and run the test with the desktop JRE?
17:37
< [R]>
The nice thing about Java on Linux is it's all self-contained :)
17:39
<&ToxicFrog>
The server is Nix so maybe but I wouldn't bet on it
17:39
<&ToxicFrog>
It might be easier to install 1.8.0.181 on one of the other machines and see the problem appears.
18:49 Kizor [moryok@Nightstar-e0a4sm.utu.fi] has quit [Ping timeout: 121 seconds]
18:49 Kizor [moryok@Nightstar-e0a4sm.utu.fi] has joined #code
20:32 Kindamoody|afk is now known as Kindamoody
21:16 Degi [Degi@Nightstar-e4puca.dyn.telefonica.de] has joined #code
22:45 Reiv [NSkiwiirc@Nightstar-ih0uis.global-gateway.net.nz] has quit [[NS] Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
22:47 Reiv [NSkiwiirc@Nightstar-ih0uis.global-gateway.net.nz] has joined #code
22:47 mode/#code [+o Reiv] by ChanServ
22:48 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has quit [Ping timeout: 122 seconds]
23:02 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
23:06 himi [sjjf@Nightstar-1drtbs.anu.edu.au] has joined #code
23:06 mode/#code [+o himi] by ChanServ
23:11 macdjord [macdjord@Nightstar-grpbnp.mc.videotron.ca] has joined #code
23:11 mode/#code [+o macdjord] by ChanServ
23:13 macdjord|slep [macdjord@Nightstar-grpbnp.mc.videotron.ca] has quit [Ping timeout: 121 seconds]
23:17 Kindamoody is now known as Kindamoody[zZz]
23:29
<&McMartin>
jeroud: Roughly: width of the rendering context, width of the quad being rendered, width of the texture being mapped to the quad
23:29
<&McMartin>
Everything else (arguably, even the width of the quad being rendered, but you do that enough you want to cache it) can be derived on the fly as needed.
23:32
<&McMartin>
SDL2 hangs on to some of the values for you, but if you want to swap textures/configurations within a single window (which you do, for the C128 driving two logical monitors but only one physical one) you need to keep the necessary information stored in the application's context
23:57
<&McMartin>
An oldie but still a classic: https://i.imgur.com/QpISccR.jpg
--- Log closed Fri Oct 12 00:00:04 2018
code logs -> 2018 -> Thu, 11 Oct 2018< code.20181010.log - code.20181012.log >

[ Latest log file ]