On Friday, November 09, 2012 11:18:06, Ron wrote:
> On Thu, Nov 08, 2012 at 11:33:09PM -0500, Chris Knadle wrote:
...
> > The fact that the /documentation/ is wrong or that the program doesn't
> > follow what the documentation says -- yes I agree that needs fixing.
> 
> That's not a fact, it's a failure on your part to comprehend what it does
> and/or how it works if you think that it is somehow wrong or inaccurate.
> 
> And it's not an agreement, since nobody else has or is suggesting that the
> documentation or intended mode of use has any indication of being wrong.
> 
> Both the documentation and 'program' look perfectly fine and they don't
> need fixing at all.  They should work just peachy as is if the library
> wasn't fatally broken.
> 
> Spreading your misunderstanding of them to other users however would very
> much be a new bug.  Do not change the documentation of this - the only
> thing broken in respect to it would appear to be your rhetorical device.

Regardless of my misunderstanding, I did agree that it should be fixed.  The 
point that I was trying to make was that the current required LD_PRELOAD=libGL 
didn't match the documentation, and I also agreed with you that it wasn't sane 
to change the documentation to require having users do that.  :-/  I don't 
think I was being at all unreasonable.

When you focus on "yelling at me" in writing like the above, it really hurts 
my incentive to help you.

> > it only works with /certain/ 3D games.  For instance the FAQ states that
> > on Windows it only works for 32-bit applications that use DirectX 9 or
> > 10,
> > 
> > and not 11:
> >    http://mumble.sourceforge.net/FAQ/English#The_overlay_does_not_work_in
> >    _game_X
> 
> You're arguing that the reason it is broken on Debian is not because of
> the obvious missing DT_NEEDED bug -- but rather because the games that
> you like to play must have been using DirectX 11?
> 
>  /lol/

The above is a misinterpretation and seems quite disrespectful.  You had a 
description of Mumble doing "crazy overlay shit" which made it seem like you 
might not be very familiar with the feature, so I tried to /help/ by 
explaining the behavior on Windows to explain it's behavior of where I see it 
work, and how often it does.  Your reply twisted this attempt to help you into 
trying to make fun of me, and I really don't appreciate that.


On Friday, November 09, 2012 21:58:28, Ron wrote:
> On Sat, Nov 10, 2012 at 02:30:03AM +0100, gregor herrmann wrote:
> > On Fri, 09 Nov 2012 09:51:05 +1030, Ron wrote:
...
> > The term "trivial" triggered me into trying it myself.
> 
> I'd hoped so :)  I've got a small mountain of backlog still to dig through
> right now, and this still isn't anywhere near the top of it just yet, so
> that's much appreciated!

If you're overloaded and need help, it's much better to ask for it than to try 
to forcably push the work off on someone else.  Please try to ask next time.

> > > >   of the LP bug and by Chris now. So the priority is probably fine.
> > > 
> > > That kind of depends on whether it's considered acceptable for the
> > > mumble-overlay / preloading libmumble described in the README to be
> > > completely broken for Wheezy.  Since that clearly can't work as it is
> > > documented if libmumble can't be loaded because of a broken DT_NEEDED.
> > 
> > Ok, so the problem is not starting mumble itself, as reported by dkg, but
> > mumble-overlay / preloading libmumble ...
> 
> Yeah, he spotted one symptom, but that's not really the primary problem
> that he actually brought to light here.
> 
> 
> So I guess the two interesting questions remaining now are:
> 
>  - Does it actually work!

It does.  First time I've ever seen it work.  I'm attaching the quilt patch I 
used to add the -lGL dependency in overlay_gl.pro.  I then did:

  $ mumble-overlay armagetronad

... and the overlay shows up over the main screen of the game.  [Armagetronad 
is a free light-cycle game vaguely similar from the movie Tron from 1982.]

>  - and when do we want to upload it if it does ...

We should probably also contact upstream about this too, because the latest 
version of mumble in upstream's Git repo doesn't have this fix.

> You should be able to do the preload trick from the README with
> any app that calls glXSwapBuffers(), and if you also set
> MUMBLE_OVERLAY_DEBUG=1 in your environment, it should bark a bunch
> of debug messages at you when it is doing things.
> 
> If that works, we're looking good.  If not, it might be back to
> the drawing board for a slightly different solution ...

Looks like that works too:

-------------------------------------------------------------

$ export MUMBLE_OVERLAY_DEBUG=1
$ mumble-overlay armagetronad
set
MumbleOverlay: Mumble overlay library loaded
MumbleOverlay: Iterating dlsym table 0x7f4a5b9e3348 0x7f4a5b9e36f0 39
MumbleOverlay: Original dlsym at 0x7f4a5b9e4030
MumbleOverlay: Request for symbol posix_memalign ((nil):0x7f4a5b9e4030)
MumbleOverlay: Request for symbol memalign ((nil):0x7f4a5b9e4030)
MumbleOverlay: Request for symbol malloc (0x7f4a5c8e29a8:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol realloc (0x7f4a5c8e29a8:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol memalign (0x7f4a5c8e29a8:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol posix_memalign 
(0x7f4a5c8e29a8:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol free (0x7f4a5c8e29a8:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol __malloc_initialize_hook 
((nil):0x7f4a5b9e4030)
MumbleOverlay: Request for symbol __malloc_hook ((nil):0x7f4a5b9e4030)
MumbleOverlay: Request for symbol __realloc_hook ((nil):0x7f4a5b9e4030)
MumbleOverlay: Request for symbol __free_hook ((nil):0x7f4a5b9e4030)
MumbleOverlay: Request for symbol __memalign_hook ((nil):0x7f4a5b9e4030)
MumbleOverlay: Request for symbol is_selinux_enabled (0xa81720:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol security_getenforce 
(0xa81720:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol freecon (0xa81720:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol security_get_boolean_pending 
(0xa81720:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol security_get_boolean_active 
(0xa81720:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol security_get_boolean_names 
(0xa81720:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol getfilecon (0xa81720:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol context_new (0xa81720:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol context_type_get (0xa81720:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol dladdr1 (0x7f4a5c8e51c8:0x7f4a5b9e4030)
MumbleOverlay: Request for symbol __register_atfork ((nil):0x7f4a5b9e4030)
MumbleOverlay: Mumble overlay library loaded
MumbleOverlay: Iterating dlsym table 0x7fd4afc36348 0x7fd4afc366f0 39
MumbleOverlay: Original dlsym at 0x7fd4afc37030
MumbleOverlay: Request for symbol posix_memalign ((nil):0x7fd4afc37030)
MumbleOverlay: Request for symbol memalign ((nil):0x7fd4afc37030)
MumbleOverlay: Request for symbol malloc (0x7fd4b2ac14e0:0x7fd4afc37030)
MumbleOverlay: Request for symbol realloc (0x7fd4b2ac14e0:0x7fd4afc37030)
MumbleOverlay: Request for symbol memalign (0x7fd4b2ac14e0:0x7fd4afc37030)
MumbleOverlay: Request for symbol posix_memalign 
(0x7fd4b2ac14e0:0x7fd4afc37030)
MumbleOverlay: Request for symbol free (0x7fd4b2ac14e0:0x7fd4afc37030)
MumbleOverlay: Request for symbol __malloc_initialize_hook 
((nil):0x7fd4afc37030)
MumbleOverlay: Request for symbol __malloc_hook ((nil):0x7fd4afc37030)
MumbleOverlay: Request for symbol __realloc_hook ((nil):0x7fd4afc37030)
MumbleOverlay: Request for symbol __free_hook ((nil):0x7fd4afc37030)
MumbleOverlay: Request for symbol __memalign_hook ((nil):0x7fd4afc37030)
MumbleOverlay: Request for symbol is_selinux_enabled (0xea48b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol security_getenforce 
(0xea48b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol freecon (0xea48b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol security_get_boolean_pending 
(0xea48b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol security_get_boolean_active 
(0xea48b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol security_get_boolean_names 
(0xea48b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol getfilecon (0xea48b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol context_new (0xea48b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol context_type_get (0xea48b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol dladdr1 (0x7fd4b2aca1c8:0x7fd4afc37030)
MumbleOverlay: Request for symbol __register_atfork ((nil):0x7fd4afc37030)
Input error reading COCKPIT_FILE: invalid format.
ROTATION_FILE is currently set to .
Input error reading TEAM_MENU_COLOR_TEAM_FULL: invalid format.
Input error reading TEAM_MENU_COLOR_TEAM_OK: invalid format.
MumbleOverlay: Request for symbol XcursorNoticeCreateBitmap 
(0x10088b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol XcursorNoticePutBitmap 
(0x10088b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol XcursorTryShapeBitmapCursor 
(0x10088b0:0x7fd4afc37030)
MumbleOverlay: Request for symbol glXGetProcAddressARB 
(0x7fd4b2ac49c8:0x7fd4afc37030)
music/titletrack.ogg
Track: 
music/when.ogg
Track: 
Should be playing the first sequence
Didn't play the sequence only
MumbleOverlay: Current context is: 0x1025b18
MumbleOverlay: GLX version 1.4
MumbleOverlay: OpenGL Version 3.3.0 NVIDIA 304.64, Vendor NVIDIA Corporation, 
Renderer Quadro FX 570M/PCIe/SSE2, Shader 3.30 NVIDIA via Cg compiler
MumbleOverlay: VERTEX: 
MumbleOverlay: FRAGMENT: 
MumbleOverlay: Connected
MumbleOverlay: Sent init 1280 1024
MumbleOverlay: SHMEM /MumbleOverlayMemory2
MumbleOverlay: BLIT 0 0 1280 1024
MumbleOverlay: Optimzied fullscreen blit
MumbleOverlay: BLIT 0 0 1280 1024
MumbleOverlay: Optimzied fullscreen blit
MumbleOverlay: ACTIVE 980 354 276 78
MumbleOverlay: BLIT 0 0 1280 1024
MumbleOverlay: Optimzied fullscreen blit
MumbleOverlay: BLIT 0 0 1280 1024
MumbleOverlay: Optimzied fullscreen blit
MumbleOverlay: BLIT 0 0 1280 1024
MumbleOverlay: Optimzied fullscreen blit
MumbleOverlay: BLIT 0 0 1280 1024
MumbleOverlay: Optimzied fullscreen blit

> If it does work, I guess the question is whether we push this now,
> or let the release team get through reviewing the current candidate
> and then push the one liner after that migrates.  The latter might
> be better, but I guess we should let them make that call :)

Just want to give you a quick thanks to Ron for the suggestion for a fix, 
Gregor for doing the fix, and Daniel for reporting the bug.



Note: I haven't yet tested the effect of the libGL dependency in a VM without 
OpenGL support.  I'll try to do that tomorrow and report back what I find.

  -- Chris

--
Chris Knadle
chris.kna...@coredump.us
--- a/overlay_gl/overlay_gl.pro
+++ b/overlay_gl/overlay_gl.pro
@@ -7,7 +7,7 @@
 TARGET = mumble$(TARGET_ADD)
 VERSION = 1.2.4
 SOURCES = overlay.c
-LIBS *= -lrt -ldl
+LIBS *= -lGL -lrt -ldl
 QMAKE_CFLAGS *= -fvisibility=hidden $(CFLAGS_ADD)
 QMAKE_LFLAGS -= -Wl,--no-undefined
 QMAKE_LFLAGS *= $(LFLAGS_ADD)

Reply via email to