Commit d88c43a
Ensure that empty or 1 element stacks are always sorted.
Matt noticed "It's kind of weird that we are forced to call sort on
a newly created and empty stack. It feels like an empty stack should
have the "sorted" flag by default on creation"
I am incluined to agree. This change ensures tht empty or 1 element
stacks are marked as sorted, as per the existing comment in the
file.
Since this involved changing the various duplication routines to
also ensure that sorted was preserved for such stacks, I also
noticed the duplication code was largely duplicated. I
took the opportunity to deduplicate the duplication code while
making these changes.
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
(Merged from openssl#28509)1 parent a5eaa0e commit d88c43a
2 files changed
Lines changed: 87 additions & 66 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
41 | | - | |
| 41 | + | |
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
48 | | - | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
49 | 51 | | |
50 | 52 | | |
| 53 | + | |
51 | 54 | | |
52 | | - | |
| 55 | + | |
53 | 56 | | |
54 | 57 | | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
| 58 | + | |
| 59 | + | |
63 | 60 | | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
70 | 68 | | |
71 | | - | |
72 | | - | |
| 69 | + | |
| 70 | + | |
73 | 71 | | |
74 | 72 | | |
75 | | - | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
76 | 89 | | |
77 | 90 | | |
78 | 91 | | |
| |||
84 | 97 | | |
85 | 98 | | |
86 | 99 | | |
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 | | - | |
| 100 | + | |
| 101 | + | |
125 | 102 | | |
126 | | - | |
127 | | - | |
128 | | - | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
129 | 106 | | |
130 | 107 | | |
131 | 108 | | |
| |||
232 | 209 | | |
233 | 210 | | |
234 | 211 | | |
| 212 | + | |
235 | 213 | | |
236 | 214 | | |
237 | 215 | | |
| |||
286 | 264 | | |
287 | 265 | | |
288 | 266 | | |
289 | | - | |
| 267 | + | |
290 | 268 | | |
291 | 269 | | |
292 | 270 | | |
| |||
298 | 276 | | |
299 | 277 | | |
300 | 278 | | |
| 279 | + | |
301 | 280 | | |
302 | 281 | | |
303 | 282 | | |
| |||
487 | 466 | | |
488 | 467 | | |
489 | 468 | | |
490 | | - | |
| 469 | + | |
491 | 470 | | |
492 | 471 | | |
493 | 472 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
53 | 62 | | |
54 | 63 | | |
55 | 64 | | |
| |||
90 | 99 | | |
91 | 100 | | |
92 | 101 | | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
93 | 105 | | |
94 | 106 | | |
95 | 107 | | |
| |||
134 | 146 | | |
135 | 147 | | |
136 | 148 | | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
137 | 156 | | |
| 157 | + | |
| 158 | + | |
138 | 159 | | |
139 | | - | |
| 160 | + | |
140 | 161 | | |
141 | 162 | | |
142 | 163 | | |
| |||
178 | 199 | | |
179 | 200 | | |
180 | 201 | | |
181 | | - | |
| 202 | + | |
182 | 203 | | |
183 | 204 | | |
184 | 205 | | |
| |||
205 | 226 | | |
206 | 227 | | |
207 | 228 | | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
208 | 232 | | |
| 233 | + | |
209 | 234 | | |
210 | 235 | | |
211 | | - | |
| 236 | + | |
212 | 237 | | |
213 | 238 | | |
214 | 239 | | |
215 | 240 | | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
216 | 248 | | |
217 | 249 | | |
218 | 250 | | |
219 | 251 | | |
220 | 252 | | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
221 | 263 | | |
222 | 264 | | |
223 | 265 | | |
| |||
0 commit comments