I've been meaning to triage this,

looks sane, but I'd rather integrate this upstream before downstream.

Let's get this in the fluxbox proper review queue :)

-Paul

On Mon, Dec 19, 2011 at 4:50 PM, Francesco Poli (wintermute)
<invernom...@paranoici.org> wrote:
> Package: fluxbox
> Version: 1.3.2-2
> Severity: normal
> Tags: patch
>
> Hello!
>
> I found out that fbsetbg may in some cases mess up with the user's
> ~/.fluxbox/lastwallpaper
> This misbehavior is caused by the fact that the DISPLAY environment
> variable is in the form hostname:displaynumber.screennumber
> where .screennumber _may_ be omitted, as long as it's .0 , as
> documented in the X(7) man page.
> This means that :0.0 and :0 are equivalent.
>
> I am not sure why, but it happens that sometimes the DISPLAY
> environment variable is set to :0 , while in some other cases
> it's set to :0.0 , in a seemingly inconsistent and unpredictable
> manner.
>
> As a consequence, taking fbsetbg code into account, the following
> scenario may happen (I actually saw it happen, and I couldn't
> understand what was going on, until I studied the fbsetbg code).
>
> The user opens a Fluxbox session and he/she has:
>
>  $ echo $DISPLAY
>  :0.0
>
> The user wants to set the following wallpaper:
>
>  $ fbsetbg -t /path/to/my/old/wallpaper.jpg
>
> The wallpaper is set and remembered for the :0.0 display:
>
>  $ cat ~/.fluxbox/lastwallpaper
>  $tile $full|/path/to/my/old/wallpaper.jpg||:0.0
>
> Good, everything is fine, the user does what he/she has to do and then
> exits from Fluxbox.
> Next time the user opens a Fluxbox session, the last set wallpaper
> is remembered and set again, since:
>
>  $ grep rootCommand ~/.fluxbox/init
>  session.screen0.rootCommand:    fbsetbg -l
>
> After some time, the user wants to change wallpaper and issues
> the following command:
>
>  $ fbsetbg -t /path/to/a/new/nice/wallpaper.jpg
>
> What happens if, in this new Fluxbox session, the user has
>
>  $ echo $DISPLAY
>  :0
>
> ?
>
> It happens that fbsetbg fails to see :0 as equivalent to :0.0
> and does not replace the previously set wallpaper with the new one.
> It just adds the new one, as if it were set for a different display!
>
>  $ cat ~/.fluxbox/lastwallpaper
>  $tile $full|/path/to/my/old/wallpaper.jpg||:0.0
>  $tile $full|/path/to/a/new/nice/wallpaper.jpg||:0
>
> There! From this point on, depending on the DISPLAY value, the
> wrong wallpaper may be set, when a new Fluxbox session is opened.
>
>
> After studying the problem, I prepared the attached patch, which
> fixes the issue for me and works in a backward-compatible way.
> The idea is to always truncate the final .0 , if present, so that
> screen 0 is always named in the same consistent manner within
> the fbsetbg script.
> In order to be backward-compatible, the script searches for $DISPLAY ,
> but also for ${DISPLAY}.0 , in ~/.fluxbox/lastwallpaper , when
> it has to replace an old wallpaper with a new one.
>
>
> Please apply the patch to the Debian package and/or forward it
> upstream.
>
> Little legal details: I think my modifications are too trivial
> to be copyrighted by me. Hence, you don't need any license from
> me, in order to distribute fbsetbg with my patch applied.
> Anyway, in case my modifications turn out to be in fact copyrighted,
> I hereby license my patch under the same exact terms as fbsetbg
> itself.
>
>
> Thanks for your time!
>
>
>
> -- System Information:
> Debian Release: wheezy/sid
>  APT prefers testing
>  APT policy: (800, 'testing'), (500, 'unstable')
> Architecture: amd64 (x86_64)
>
> Kernel: Linux 3.1.0-1-amd64 (SMP w/2 CPU cores)
> Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
> Shell: /bin/sh linked to /bin/bash
>
> Versions of packages fluxbox depends on:
> ii  libc6           2.13-21
> ii  libfontconfig1  2.8.0-3
> ii  libfreetype6    2.4.8-1
> ii  libfribidi0     0.19.2-1
> ii  libgcc1         1:4.6.2-7
> ii  libice6         2:1.0.7-2
> ii  libimlib2       1.4.4-1+b1
> ii  libsm6          2:1.2.0-2
> ii  libstdc++6      4.6.2-7
> ii  libx11-6        2:1.4.4-4
> ii  libxext6        2:1.3.0-3
> ii  libxft2         2.2.0-3
> ii  libxinerama1    2:1.1.1-3
> ii  libxpm4         1:3.5.9-4
> ii  libxrandr2      2:1.3.2-2
> ii  libxrender1     1:0.9.6-2
> ii  menu            2.1.46
> ii  zlib1g          1:1.2.3.4.dfsg-3
>
> Versions of packages fluxbox recommends:
> ii  feh              2.1-1
> ii  xfonts-terminus  4.30-2
>
> Versions of packages fluxbox suggests:
> pn  fbautostart  <none>
> pn  fbdesk       <none>
> pn  fbpager      <none>
>
> -- no debconf information



-- 
:wq



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to