summaryrefslogtreecommitdiff
path: root/pkg/strace/patch/0005-Don-t-omit-second-operand-to-operator.patch
blob: e4344468f1aff497191d570dbe6b88e5367b2bd1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
From e245f2d71d44d2a858517321a01d3ca71147042f Mon Sep 17 00:00:00 2001
From: Michael Forney <mforney@mforney.org>
Date: Sun, 7 Jul 2019 21:53:16 -0700
Subject: [PATCH] Don't omit second operand to '?' operator

---
 src/open.c    | 5 +++--
 src/prctl.c   | 8 ++++----
 src/strace.c  | 8 ++++----
 src/strauss.c | 4 +++-
 src/util.c    | 2 +-
 5 files changed, 15 insertions(+), 12 deletions(-)

diff --git a/src/open.c b/src/open.c
index 6356c5831..df59ea999 100644
--- a/src/open.c
+++ b/src/open.c
@@ -88,8 +88,9 @@ sprint_open_modes64(uint64_t flags)
 	}
 	*p = '\0';
 
-	return sprintflags_ex(outstr, open_mode_flags, flags, sep,
-			      XLAT_STYLE_ABBREV) ?: outstr;
+	str = sprintflags_ex(outstr, open_mode_flags, flags, sep,
+			     XLAT_STYLE_ABBREV);
+	return str ? str : outstr;
 }
 
 const char *
diff --git a/src/prctl.c b/src/prctl.c
index dbabb3a18..712715b98 100644
--- a/src/prctl.c
+++ b/src/prctl.c
@@ -98,10 +98,10 @@ sprint_sve_val(kernel_ulong_t arg, bool aux)
 	if (!aux && flags && xlat_verbose(xlat_verbosity) == XLAT_STYLE_VERBOSE)
 	{
 		xsprintf(out, "%#" PRI_klx " /* %s%s%#" PRI_klx " */",
-			 arg, flags_str ?: "", flags_str ? "|" : "", vl);
+			 arg, flags_str ? flags_str : "", flags_str ? "|" : "", vl);
 	} else {
 		xsprintf(out, "%s%s%#" PRI_klx,
-			 flags_str ?: "", flags_str ? "|" : "", vl);
+			 flags_str ? flags_str : "", flags_str ? "|" : "", vl);
 	}
 
 	return out;
@@ -134,10 +134,10 @@ sprint_sme_val(kernel_ulong_t arg, bool aux)
 	if (!aux && flags && xlat_verbose(xlat_verbosity) == XLAT_STYLE_VERBOSE)
 	{
 		xsprintf(out, "%#" PRI_klx " /* %s%s%#" PRI_klx " */",
-			 arg, flags_str ?: "", flags_str ? "|" : "", vl);
+			 arg, flags_str ? flags_str : "", flags_str ? "|" : "", vl);
 	} else {
 		xsprintf(out, "%s%s%#" PRI_klx,
-			 flags_str ?: "", flags_str ? "|" : "", vl);
+			 flags_str ? flags_str : "", flags_str ? "|" : "", vl);
 	}
 
 	return out;
diff --git a/src/strace.c b/src/strace.c
index 1a9d53bc8..9ac16c8c3 100644
--- a/src/strace.c
+++ b/src/strace.c
@@ -2649,7 +2649,7 @@ init(int argc, char *argv[])
 			break;
 		case GETOPT_TS:
 			tflag_long_set = true;
-			if (parse_ts_arg(optarg ?: tflag_str))
+			if (parse_ts_arg(optarg ? optarg : tflag_str))
 				error_opt_arg(c, lopt, optarg);
 			break;
 		case 'T':
@@ -2723,7 +2723,7 @@ init(int argc, char *argv[])
 				error_opt_arg(c, lopt, optarg);
 			break;
 		case GETOPT_TIPS:
-			if (parse_tips_arg(optarg ?: ""))
+			if (parse_tips_arg(optarg ? optarg : ""))
 				error_opt_arg(c, lopt, optarg);
 			break;
 		case GETOPT_ARGV0:
@@ -2772,10 +2772,10 @@ init(int argc, char *argv[])
 			qualify_kvm(optarg);
 			break;
 		case GETOPT_QUAL_QUIET:
-			qualify_quiet(optarg ?: qflag_qual);
+			qualify_quiet(optarg ? optarg : qflag_qual);
 			break;
 		case GETOPT_QUAL_DECODE_FD:
-			qualify_decode_fd(optarg ?: yflag_qual);
+			qualify_decode_fd(optarg ? optarg : yflag_qual);
 			break;
 		case GETOPT_QUAL_DECODE_PID:
 			qualify_decode_pid(optarg);
diff --git a/src/strauss.c b/src/strauss.c
index bec85021b..5d49f950a 100644
--- a/src/strauss.c
+++ b/src/strauss.c
@@ -367,6 +367,7 @@ print_totd(void)
 	struct timeval tv;
 	size_t id;
 	size_t i;
+	const char *tip;
 
 	if (printed || show_tips == TIPS_NONE)
 		return;
@@ -386,9 +387,10 @@ print_totd(void)
 	for (i = 0; (i < MAX_TIP_LINES) && (tips_tricks_tweaks[id][i] ||
 					    (i < (ARRAY_SIZE(tip_right) - 1)));
 	     i++) {
+		tip = tips_tricks_tweaks[id][i];
 		fprintf(stderr, "%s%-*s%s%s\n",
 			tip_left[MIN(i + 1, ARRAY_SIZE(tip_left) - 1)],
-			w, tips_tricks_tweaks[id][i] ?: "",
+			w, tip ? tip : "",
 			tip_right[MIN(i + 1, ARRAY_SIZE(tip_right) - 1)],
 			strauss[MIN(3 + i, strauss_lines - 1)]);
 	}
diff --git a/src/util.c b/src/util.c
index ada3ba76a..a88dd008d 100644
--- a/src/util.c
+++ b/src/util.c
@@ -640,7 +640,7 @@ printsocket(struct tcb *tcp, int fd, const char *path)
 		return false;
 
 	const char *details = get_sockaddr_by_inode(tcp, fd, inode);
-	print_string_in_angle_brackets(details ?: path);
+	print_string_in_angle_brackets(details ? details : path);
 
 	return true;
 }
-- 
2.44.0