Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/bash/src/builtins/suspend.def |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | - | |||||||||||||
2 | - | |||||||||||||
3 | - | |||||||||||||
4 | - | |||||||||||||
5 | - | |||||||||||||
6 | - | |||||||||||||
7 | - | |||||||||||||
8 | - | |||||||||||||
9 | - | |||||||||||||
10 | - | |||||||||||||
11 | static void suspend_continue (int); | - | ||||||||||||
12 | - | |||||||||||||
13 | static SigHandler *old_cont; | - | ||||||||||||
14 | - | |||||||||||||
15 | - | |||||||||||||
16 | - | |||||||||||||
17 | - | |||||||||||||
18 | - | |||||||||||||
19 | static void | - | ||||||||||||
20 | suspend_continue (sig) | - | ||||||||||||
21 | int sig; | - | ||||||||||||
22 | { | - | ||||||||||||
23 | set_signal_handler ( | - | ||||||||||||
24 | 18 | - | ||||||||||||
25 | , old_cont); | - | ||||||||||||
26 | - | |||||||||||||
27 | - | |||||||||||||
28 | - | |||||||||||||
29 | return; never executed: return; | 0 | ||||||||||||
30 | } | - | ||||||||||||
31 | - | |||||||||||||
32 | - | |||||||||||||
33 | - | |||||||||||||
34 | int | - | ||||||||||||
35 | suspend_builtin (list) | - | ||||||||||||
36 | WORD_LIST *list; | - | ||||||||||||
37 | { | - | ||||||||||||
38 | int opt, force; | - | ||||||||||||
39 | - | |||||||||||||
40 | reset_internal_getopt (); | - | ||||||||||||
41 | force = 0; | - | ||||||||||||
42 | while ((
| 0 | ||||||||||||
43 | switch (opt) | - | ||||||||||||
44 | { | - | ||||||||||||
45 | case never executed: 'f':case 'f': never executed: case 'f': | 0 | ||||||||||||
46 | force++; | - | ||||||||||||
47 | break; never executed: break; | 0 | ||||||||||||
48 | case never executed: -99:case -99: never executed: builtin_help (); returncase -99: never executed: (258);return (258); never executed: return (258); | 0 | ||||||||||||
49 | default never executed: :default: never executed: default: | 0 | ||||||||||||
50 | builtin_usage (); | - | ||||||||||||
51 | return never executed: (258);return (258); never executed: return (258); | 0 | ||||||||||||
52 | } | - | ||||||||||||
53 | - | |||||||||||||
54 | list = loptend; | - | ||||||||||||
55 | - | |||||||||||||
56 | if (job_control == 0
| 0 | ||||||||||||
57 | { | - | ||||||||||||
58 | sh_nojobs ( | - | ||||||||||||
59 | dcgettext (((void *)0), | - | ||||||||||||
60 | "cannot suspend" | - | ||||||||||||
61 | , 5) | - | ||||||||||||
62 | ); | - | ||||||||||||
63 | return never executed: (1);return (1); never executed: return (1); | 0 | ||||||||||||
64 | } | - | ||||||||||||
65 | - | |||||||||||||
66 | if (force == 0
| 0 | ||||||||||||
67 | { | - | ||||||||||||
68 | no_args (list); | - | ||||||||||||
69 | - | |||||||||||||
70 | if (login_shell
| 0 | ||||||||||||
71 | { | - | ||||||||||||
72 | builtin_error ( | - | ||||||||||||
73 | dcgettext (((void *)0), | - | ||||||||||||
74 | "cannot suspend a login shell" | - | ||||||||||||
75 | , 5) | - | ||||||||||||
76 | ); | - | ||||||||||||
77 | return never executed: (1);return (1); never executed: return (1); | 0 | ||||||||||||
78 | } | - | ||||||||||||
79 | } never executed: end of block | 0 | ||||||||||||
80 | - | |||||||||||||
81 | - | |||||||||||||
82 | - | |||||||||||||
83 | - | |||||||||||||
84 | old_cont = (SigHandler *)set_signal_handler ( | - | ||||||||||||
85 | 18 | - | ||||||||||||
86 | , suspend_continue); | - | ||||||||||||
87 | - | |||||||||||||
88 | - | |||||||||||||
89 | - | |||||||||||||
90 | killpg (shell_pgrp, | - | ||||||||||||
91 | 19 | - | ||||||||||||
92 | ); | - | ||||||||||||
93 | return never executed: (0);return (0); never executed: return (0); | 0 | ||||||||||||
94 | } | - | ||||||||||||
Switch to Source code | Preprocessed file |