ports/111342: [patch] x11/slim theme parse error under 7-CURRENT

Henrik Brix Andersen henrik at brixandersen.dk
Sat Apr 7 02:50:06 UTC 2007


>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 at 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:



More information about the freebsd-ports-bugs mailing list