Skip site navigation (1)Skip section navigation (2)
Date:      Sat,  7 Apr 2007 04:14:17 +0200 (CEST)
From:      Henrik Brix Andersen <henrik@brixandersen.dk>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        ports@fsck.ch
Subject:   ports/111342: [patch] x11/slim theme parse error under 7-CURRENT
Message-ID:  <20070407021417.58DA22E02F@fangorn.brixandersen.dk>
Resent-Message-ID: <200704070250.l372o5tg047772@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         111342
>Category:       ports
>Synopsis:       [patch] x11/slim theme parse error under 7-CURRENT
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Apr 07 02:50:04 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Henrik Brix Andersen
>Release:        FreeBSD 6.2-STABLE i386
>Organization:
pil.dk
>Environment:
System: FreeBSD fangorn.brixandersen.dk 6.2-STABLE FreeBSD 6.2-STABLE #48: Sat Mar 24 20:05:55 CET 2007 root@fangorn.brixandersen.dk:/usr/obj/usr/src/sys/FANGORN i386


	
>Description:
Since upgrading a work station to FreeBSD 7.0-CURRENT, x11/slim-1.2.6
parses all themes wrongly (all percentages are evaluated to
zero). This also applies to the default theme provided by slim itself.

I have tracked down this issue which seems to be caused by a stricter
gcc in 7-CURRENT compared to RELENG_6.
	
>How-To-Repeat:
Install x11/slim under 7-CURRENT and observe that the input panel is
wrongly placed at the top of the screen even though
/usr/local/share/slim/themes/default/slim.theme specifies non-zero
offsets (given in percent).

	
>Fix:
The patch below fixes this issue by eliminating the 'const char* tmp'
variable.

I have submitted the patch upstream for inclusion in the next release.

	

--- patch-cfg.cpp begins here ---
--- cfg.cpp.orig	Sat Apr  7 03:45:30 2007
+++ cfg.cpp	Sat Apr  7 03:46:20 2007
@@ -211,8 +211,7 @@ int Cfg::absolutepos(const string& posit
     int n = -1;
     n = position.find("%");
     if (n>0) { // X Position expressed in percentage
-        const char* tmp =  position.substr(0, n).c_str();
-        int result = (max*string2int(tmp)/100) - (width / 2);
+        int result = (max*string2int(position.substr(0, n).c_str())/100) - (width / 2);
         return result < 0 ? 0 : result ;
     } else { // Absolute X position
         return string2int(position.c_str());
--- patch-cfg.cpp ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070407021417.58DA22E02F>