diff options
| author | Glenn Morris | 2008-08-10 22:44:36 +0000 |
|---|---|---|
| committer | Glenn Morris | 2008-08-10 22:44:36 +0000 |
| commit | 27bef0c8eb6aa28e8da58c47a762ad1bce1d07a2 (patch) | |
| tree | 1e2b42689f5418d2a301f381a2e120e8e4bec9e5 /src/process.c | |
| parent | 43ae933ea5ac31fd60b17ef1654f7515ba4dc76b (diff) | |
| download | emacs-27bef0c8eb6aa28e8da58c47a762ad1bce1d07a2.tar.gz emacs-27bef0c8eb6aa28e8da58c47a762ad1bce1d07a2.zip | |
(procfs_system_process_attributes): Use EMACS_INTs to silence gcc
"limited range of data type" warnings in some make_fixnum_or_float calls.
Diffstat (limited to 'src/process.c')
| -rw-r--r-- | src/process.c | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/src/process.c b/src/process.c index 6bbdc53ddb1..a9cb763d7a8 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -7260,6 +7260,7 @@ procfs_system_process_attributes (pid) | |||
| 7260 | Lisp_Object attrs = Qnil; | 7260 | Lisp_Object attrs = Qnil; |
| 7261 | Lisp_Object cmd_str, decoded_cmd, tem; | 7261 | Lisp_Object cmd_str, decoded_cmd, tem; |
| 7262 | struct gcpro gcpro1, gcpro2; | 7262 | struct gcpro gcpro1, gcpro2; |
| 7263 | EMACS_INT uid_eint, gid_eint; | ||
| 7263 | 7264 | ||
| 7264 | CHECK_NUMBER_OR_FLOAT (pid); | 7265 | CHECK_NUMBER_OR_FLOAT (pid); |
| 7265 | proc_id = FLOATP (pid) ? XFLOAT_DATA (pid) : XINT (pid); | 7266 | proc_id = FLOATP (pid) ? XFLOAT_DATA (pid) : XINT (pid); |
| @@ -7271,15 +7272,18 @@ procfs_system_process_attributes (pid) | |||
| 7271 | 7272 | ||
| 7272 | /* euid egid */ | 7273 | /* euid egid */ |
| 7273 | uid = st.st_uid; | 7274 | uid = st.st_uid; |
| 7274 | attrs = Fcons (Fcons (Qeuid, make_fixnum_or_float (uid)), attrs); | 7275 | /* Use of EMACS_INT stops GCC whining about limited range of data type. */ |
| 7276 | uid_eint = uid; | ||
| 7277 | attrs = Fcons (Fcons (Qeuid, make_fixnum_or_float (uid_eint)), attrs); | ||
| 7275 | BLOCK_INPUT; | 7278 | BLOCK_INPUT; |
| 7276 | pw = (struct passwd *) getpwuid (uid); | 7279 | pw = (struct passwd *) getpwuid (uid); |
| 7277 | UNBLOCK_INPUT; | 7280 | UNBLOCK_INPUT; |
| 7278 | if (pw) | 7281 | if (pw) |
| 7279 | attrs = Fcons (Fcons (Quser, build_string (pw->pw_name)), attrs); | 7282 | attrs = Fcons (Fcons (Quser, build_string (pw->pw_name)), attrs); |
| 7280 | 7283 | ||
| 7281 | gid = st.st_gid; | 7284 | gid = st.st_gid; |
| 7282 | attrs = Fcons (Fcons (Qegid, make_fixnum_or_float (gid)), attrs); | 7285 | gid_eint = gid; |
| 7286 | attrs = Fcons (Fcons (Qegid, make_fixnum_or_float (gid_eint)), attrs); | ||
| 7283 | BLOCK_INPUT; | 7287 | BLOCK_INPUT; |
| 7284 | gr = (struct group *) getgrgid (gid); | 7288 | gr = (struct group *) getgrgid (gid); |
| 7285 | UNBLOCK_INPUT; | 7289 | UNBLOCK_INPUT; |
| @@ -7313,6 +7317,7 @@ procfs_system_process_attributes (pid) | |||
| 7313 | 7317 | ||
| 7314 | if (q) | 7318 | if (q) |
| 7315 | { | 7319 | { |
| 7320 | EMACS_INT ppid_eint, pgrp_eint, sess_eint, tpgid_eint, thcount_eint; | ||
| 7316 | p = q + 2; | 7321 | p = q + 2; |
| 7317 | /* state ppid pgrp sess tty tpgid . minflt cminflt majflt cmajflt utime stime cutime cstime priority nice thcount . start vsize rss */ | 7322 | /* state ppid pgrp sess tty tpgid . minflt cminflt majflt cmajflt utime stime cutime cstime priority nice thcount . start vsize rss */ |
| 7318 | sscanf (p, "%c %d %d %d %d %d %*u %lu %lu %lu %lu %Lu %Lu %Lu %Lu %ld %ld %d %*d %Lu %lu %ld", | 7323 | sscanf (p, "%c %d %d %d %d %d %*u %lu %lu %lu %lu %Lu %Lu %Lu %Lu %ld %ld %d %*d %Lu %lu %ld", |
| @@ -7328,11 +7333,17 @@ procfs_system_process_attributes (pid) | |||
| 7328 | tem = build_string (state_str); | 7333 | tem = build_string (state_str); |
| 7329 | attrs = Fcons (Fcons (Qstate, tem), attrs); | 7334 | attrs = Fcons (Fcons (Qstate, tem), attrs); |
| 7330 | } | 7335 | } |
| 7331 | attrs = Fcons (Fcons (Qppid, make_fixnum_or_float (ppid)), attrs); | 7336 | /* Stops GCC whining about limited range of data type. */ |
| 7332 | attrs = Fcons (Fcons (Qpgrp, make_fixnum_or_float (pgrp)), attrs); | 7337 | ppid_eint = ppid; |
| 7333 | attrs = Fcons (Fcons (Qsess, make_fixnum_or_float (sess)), attrs); | 7338 | pgrp_eint = pgrp; |
| 7339 | sess_eint = sess; | ||
| 7340 | tpgid_eint = tpgid; | ||
| 7341 | thcount_eint = thcount; | ||
| 7342 | attrs = Fcons (Fcons (Qppid, make_fixnum_or_float (ppid_eint)), attrs); | ||
| 7343 | attrs = Fcons (Fcons (Qpgrp, make_fixnum_or_float (pgrp_eint)), attrs); | ||
| 7344 | attrs = Fcons (Fcons (Qsess, make_fixnum_or_float (sess_eint)), attrs); | ||
| 7334 | attrs = Fcons (Fcons (Qttname, procfs_ttyname (tty)), attrs); | 7345 | attrs = Fcons (Fcons (Qttname, procfs_ttyname (tty)), attrs); |
| 7335 | attrs = Fcons (Fcons (Qtpgid, make_fixnum_or_float (tpgid)), attrs); | 7346 | attrs = Fcons (Fcons (Qtpgid, make_fixnum_or_float (tpgid_eint)), attrs); |
| 7336 | attrs = Fcons (Fcons (Qminflt, make_fixnum_or_float (minflt)), attrs); | 7347 | attrs = Fcons (Fcons (Qminflt, make_fixnum_or_float (minflt)), attrs); |
| 7337 | attrs = Fcons (Fcons (Qmajflt, make_fixnum_or_float (majflt)), attrs); | 7348 | attrs = Fcons (Fcons (Qmajflt, make_fixnum_or_float (majflt)), attrs); |
| 7338 | attrs = Fcons (Fcons (Qcminflt, make_fixnum_or_float (cminflt)), attrs); | 7349 | attrs = Fcons (Fcons (Qcminflt, make_fixnum_or_float (cminflt)), attrs); |
| @@ -7354,7 +7365,7 @@ procfs_system_process_attributes (pid) | |||
| 7354 | attrs); | 7365 | attrs); |
| 7355 | attrs = Fcons (Fcons (Qpri, make_number (priority)), attrs); | 7366 | attrs = Fcons (Fcons (Qpri, make_number (priority)), attrs); |
| 7356 | attrs = Fcons (Fcons (Qnice, make_number (nice)), attrs); | 7367 | attrs = Fcons (Fcons (Qnice, make_number (nice)), attrs); |
| 7357 | attrs = Fcons (Fcons (Qthcount, make_fixnum_or_float (thcount)), attrs); | 7368 | attrs = Fcons (Fcons (Qthcount, make_fixnum_or_float (thcount_eint)), attrs); |
| 7358 | EMACS_GET_TIME (tnow); | 7369 | EMACS_GET_TIME (tnow); |
| 7359 | get_up_time (&sec, &usec); | 7370 | get_up_time (&sec, &usec); |
| 7360 | EMACS_SET_SECS (telapsed, sec); | 7371 | EMACS_SET_SECS (telapsed, sec); |