.
OBS-URL: https://build.opensuse.org/package/show/Base:System/procps?expand=0&rev=128
This commit is contained in:
parent
8b3ddd521c
commit
5631837848
@ -1,20 +0,0 @@
|
||||
--- top/top.c
|
||||
+++ top/top.c 2012-07-05 07:51:02.384012773 +0000
|
||||
@@ -1151,9 +1151,15 @@ static const char *user_certify (WIN_t *
|
||||
Monpidsidx = 0;
|
||||
if (*str) {
|
||||
num = (uid_t)strtoul(str, &endp, 0);
|
||||
- if ('\0' == *endp)
|
||||
+ if ('\0' == *endp) {
|
||||
pwd = getpwuid(num);
|
||||
- else
|
||||
+ if (!pwd) {
|
||||
+ /* Allow foreign users from e.g. within chroot environment */
|
||||
+ q->usrseluid = num;
|
||||
+ q->usrseltyp = typ;
|
||||
+ return NULL;
|
||||
+ }
|
||||
+ } else
|
||||
pwd = getpwnam(str);
|
||||
if (!pwd) return N_txt(BAD_username_txt);
|
||||
q->usrseluid = pwd->pw_uid;
|
@ -1,59 +0,0 @@
|
||||
From 34b8614f5699bb7ade9f98835e1d2a20a0aae5cb Mon Sep 17 00:00:00 2001
|
||||
From: Jim Warner <james.warner@comcast.net>
|
||||
Date: Mon, 17 Dec 2012 00:00:00 -0600
|
||||
Subject: [PATCH 9/9] top: make rcfile immune from a potential locale change
|
||||
|
||||
The delay interval is kept in the rcfile in a floating
|
||||
point format and is thus susceptible to changes in the
|
||||
locale between invocations. So values written as #,###
|
||||
could not be read if a new locale uses decimal points.
|
||||
|
||||
This commit takes control of our own decimal point and
|
||||
will henceforth make top immune to locale switcharoos.
|
||||
|
||||
(now that we know a '.' + 2 spaces is squeezed to one)
|
||||
(everything's perfectly justified, but it's just luck)
|
||||
|
||||
Reference(s):
|
||||
http://www.freelists.org/post/procps/top-has-a-localedpendent-config-file-toprc
|
||||
http://lists.opensuse.org/opensuse-bugs/2012-12/msg01466.html
|
||||
--- top/top.c
|
||||
+++ top/top.c 2012-12-18 17:41:30.909860953 +0000
|
||||
@@ -2479,16 +2479,19 @@ static void configs_read (void) {
|
||||
|
||||
fp = fopen(Rc_name, "r");
|
||||
if (fp) {
|
||||
+ int tmp_whole, tmp_fract;
|
||||
fbuf[0] = '\0';
|
||||
fgets(fbuf, sizeof(fbuf), fp); // ignore eyecatcher
|
||||
- if (5 != fscanf(fp
|
||||
- , "Id:%c, Mode_altscr=%d, Mode_irixps=%d, Delay_time=%f, Curwin=%d\n"
|
||||
- , &Rc.id, &Rc.mode_altscr, &Rc.mode_irixps, &tmp_delay, &i)) {
|
||||
+ if (6 != fscanf(fp
|
||||
+ , "Id:%c, Mode_altscr=%d, Mode_irixps=%d, Delay_time=%d.%d, Curwin=%d\n"
|
||||
+ , &Rc.id, &Rc.mode_altscr, &Rc.mode_irixps, &tmp_whole, &tmp_fract, &i)) {
|
||||
p = fmtmk(N_fmt(RC_bad_files_fmt), Rc_name);
|
||||
goto default_or_error;
|
||||
}
|
||||
// you saw that, right? (fscanf stickin' it to 'i')
|
||||
Curwin = &Winstk[i];
|
||||
+ // this may be ugly, but it keeps us locale independent...
|
||||
+ tmp_delay = (float)tmp_whole + (float)tmp_fract / 1000;
|
||||
|
||||
for (i = 0 ; i < GROUPSMAX; i++) {
|
||||
WIN_t *w = &Winstk[i];
|
||||
@@ -3015,9 +3018,12 @@ static void file_writerc (void) {
|
||||
return;
|
||||
}
|
||||
fprintf(fp, "%s's " RCF_EYECATCHER, Myname);
|
||||
- fprintf(fp, "Id:%c, Mode_altscr=%d, Mode_irixps=%d, Delay_time=%.3f, Curwin=%d\n"
|
||||
+ fprintf(fp, "Id:%c, Mode_altscr=%d, Mode_irixps=%d, Delay_time=%d.%d, Curwin=%d\n"
|
||||
, RCF_VERSION_ID
|
||||
- , Rc.mode_altscr, Rc.mode_irixps, Rc.delay_time, (int)(Curwin - Winstk));
|
||||
+ , Rc.mode_altscr, Rc.mode_irixps
|
||||
+ // this may be ugly, but it keeps us locale independent...
|
||||
+ , (int)Rc.delay_time, (int)((Rc.delay_time - (int)Rc.delay_time) * 1000)
|
||||
+ , (int)(Curwin - Winstk));
|
||||
|
||||
for (i = 0 ; i < GROUPSMAX; i++) {
|
||||
fprintf(fp, "%s\tfieldscur=%s\n"
|
@ -1,3 +1,11 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 26 07:17:08 UTC 2014 - werner@suse.de
|
||||
|
||||
- Remove patches
|
||||
procps-v3.3.3-chroot.diff
|
||||
procps-v3.3.5-top-locale.patch
|
||||
as already included in upstream code (bnc#884502)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 21 13:39:58 UTC 2014 - werner@suse.de
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user