Commit 43e6316
committed
Fix bug #66150: SOAP WSDL cache race condition causes Segmentation Fault
When we have two processes both trying to cache a WSDL, they might start
writing the data to the same temporary file, causing file corruption due
to the race condition. Fix this by creating a temporary file first, and
then moving it to the final location. If moving fails then we know
another process finished caching first.
This also fixes #67617 as a consequence of its implementation.
Closes GH-12469.1 parent af3d2f7 commit 43e6316
2 files changed
+17
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
27 | 30 | | |
28 | 31 | | |
29 | 32 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
| 25 | + | |
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
| |||
2119 | 2120 | | |
2120 | 2121 | | |
2121 | 2122 | | |
2122 | | - | |
| 2123 | + | |
| 2124 | + | |
| 2125 | + | |
| 2126 | + | |
2123 | 2127 | | |
2124 | 2128 | | |
2125 | 2129 | | |
| |||
2371 | 2375 | | |
2372 | 2376 | | |
2373 | 2377 | | |
2374 | | - | |
| 2378 | + | |
2375 | 2379 | | |
| 2380 | + | |
| 2381 | + | |
| 2382 | + | |
| 2383 | + | |
| 2384 | + | |
| 2385 | + | |
| 2386 | + | |
2376 | 2387 | | |
2377 | 2388 | | |
2378 | 2389 | | |
2379 | 2390 | | |
2380 | 2391 | | |
| 2392 | + | |
2381 | 2393 | | |
2382 | 2394 | | |
2383 | 2395 | | |
| |||
0 commit comments