Re: [dev] [dwm] BadAtom error solved

From: Christoph Helma <helma_AT_in-silico.ch>
Date: Wed, 26 Oct 2011 12:37:35 +0200

On Tue, 25 Oct 2011 22:10:07 +0200, Anselm R Garbe <garbeam_AT_gmail.com> wrote:
> On 25 October 2011 13:08, <helma_AT_in-silico.ch> wrote:
> > Running the example code at the bottom of
> > https://github.com/wedesoft/hornetseye-xorg results in the following
> > error:
> >
> > X Error of failed request:  BadAtom (invalid Atom parameter)
> >  Major opcode of failed request:  18 (X_ChangeProperty)
> >  Atom id in failed request:  0x0
> >  Serial number of failed request:  10
> >  Current serial number in output stream:  11
> >
> > The same code works well with wmii and fluxbox window managers.
> > Strangely enough it works also from time to time with dwm, but I have no
> > idea how to reproduce these working conditions. Never had problems with
> > other X applications under dwm.
> >
> > I have been able to track the following code
> > The error is raised by
> >
> >  m_wmProtocols = XInternAtom( display->get(), "WM_PROTOCOLS", False );
> >
> > https://github.com/wedesoft/hornetseye-xorg/blob/master/ext/x11window.cc#L258
> >
> > Unfortunately I am completely clueless when it comes to X programming
> > and would appreciate any help to solve this issue.
>
> Imho you tracked the issue to the wrong line in your code. The issue
> is more likely caused by
> https://github.com/wedesoft/hornetseye-xorg/blob/master/ext/x11window.cc#L255
> (haven't checked though) which in turn refers to
> https://github.com/wedesoft/hornetseye-xorg/blob/master/ext/x11window.cc#L251,
> which might not exist (due to the True as last argument) in case of
> dwm. dwm doesn't use or set any MOTIF hints.

Thanks! Changing that line to

    Atom wmProperty = XInternAtom(display->get(), "WM_HINTS", True);
    
seems to solve the problem.

Christoph
Received on Wed Oct 26 2011 - 12:37:35 CEST

This archive was generated by hypermail 2.3.0 : Wed Oct 26 2011 - 12:48:03 CEST