Skip to content

Commit

Permalink
Do not enable asynchronous cancellation in system. Fixes bug 14782.
Browse files Browse the repository at this point in the history
We needlessly enabled thread cancellation before it was necessary. As
only call that needs to be guarded is waitpid which is cancellation
point we could remove cancellation altogether.
  • Loading branch information
Ondřej Bílka committed Jan 15, 2014
1 parent 7beb48c commit c4dd57c
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 24 deletions.
28 changes: 14 additions & 14 deletions NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,20 @@ Version 2.19
156, 387, 431, 762, 832, 926, 2801, 4772, 6786, 6787, 6807, 6810, 7003,
9721, 9954, 10253, 10278, 11087, 11157, 11214, 12100, 12486, 12986,
13028, 13982, 13985, 14029, 14032, 14120, 14143, 14155, 14286, 14547,
14699, 14752, 14876, 14910, 15004, 15048, 15073, 15089, 15128, 15218,
15268, 15277, 15308, 15362, 15374, 15400, 15425, 15427, 15483, 15522,
15531, 15532, 15593, 15601, 15608, 15609, 15610, 15632, 15640, 15670,
15672, 15680, 15681, 15723, 15734, 15735, 15736, 15748, 15749, 15754,
15760, 15763, 15764, 15797, 15799, 15825, 15843, 15844, 15846, 15847,
15849, 15850, 15855, 15856, 15857, 15859, 15867, 15886, 15887, 15890,
15892, 15893, 15895, 15897, 15901, 15905, 15909, 15915, 15917, 15919,
15921, 15923, 15939, 15941, 15948, 15963, 15966, 15985, 15988, 15997,
16032, 16034, 16036, 16037, 16038, 16041, 16055, 16071, 16072, 16074,
16077, 16078, 16103, 16112, 16133, 16143, 16144, 16146, 16150, 16151,
16153, 16167, 16172, 16195, 16214, 16245, 16271, 16274, 16283, 16289,
16293, 16314, 16316, 16330, 16337, 16338, 16356, 16365, 16366, 16369,
16372, 16375, 16379, 16384, 16385, 16386, 16387, 16390, 16394, 16400,
16407, 16408, 16414.
14699, 14752, 14782, 14876, 14910, 15004, 15048, 15073, 15089, 15128,
15218, 15268, 15277, 15308, 15362, 15374, 15400, 15425, 15427, 15483,
15522, 15531, 15532, 15593, 15601, 15608, 15609, 15610, 15632, 15640,
15670, 15672, 15680, 15681, 15723, 15734, 15735, 15736, 15748, 15749,
15754, 15760, 15763, 15764, 15797, 15799, 15825, 15843, 15844, 15846,
15847, 15849, 15850, 15855, 15856, 15857, 15859, 15867, 15886, 15887,
15890, 15892, 15893, 15895, 15897, 15901, 15905, 15909, 15915, 15917,
15919, 15921, 15923, 15939, 15941, 15948, 15963, 15966, 15985, 15988,
15997, 16032, 16034, 16036, 16037, 16038, 16041, 16055, 16071, 16072,
16074, 16077, 16078, 16103, 16112, 16133, 16143, 16144, 16146, 16150,
16151, 16153, 16167, 16172, 16195, 16214, 16245, 16271, 16274, 16283,
16289, 16293, 16314, 16316, 16330, 16337, 16338, 16356, 16365, 16366,
16369, 16372, 16375, 16379, 16384, 16385, 16386, 16387, 16390, 16394,
16400, 16407, 16408, 16414.

* Slovenian translations for glibc messages have been contributed by the
Translation Project's Slovenian team of translators.
Expand Down
11 changes: 1 addition & 10 deletions sysdeps/posix/system.c
Original file line number Diff line number Diff line change
Expand Up @@ -181,15 +181,6 @@ __libc_system (const char *line)
not be available after a chroot(), for example. */
return do_system ("exit 0") == 0;

if (SINGLE_THREAD_P)
return do_system (line);

int oldtype = LIBC_CANCEL_ASYNC ();

int result = do_system (line);

LIBC_CANCEL_RESET (oldtype);

return result;
return do_system (line);
}
weak_alias (__libc_system, system)

0 comments on commit c4dd57c

Please sign in to comment.