Ver Fonte

siglongjmp: document why this function just calls longjmp

Rich Felker há 5 meses atrás
pai
commit
008f737ddf
1 ficheiros alterados com 5 adições e 0 exclusões
  1. 5 0
      src/signal/siglongjmp.c

+ 5 - 0
src/signal/siglongjmp.c

@@ -5,5 +5,10 @@
 
 _Noreturn void siglongjmp(sigjmp_buf buf, int ret)
 {
+	/* If sigsetjmp was called with nonzero savemask flag, the address
+	 * longjmp will return to is inside of sigsetjmp. The signal mask
+	 * will then be restored in the returned-to context instead of here,
+	 * which matters if the context we are returning from may not have
+	 * sufficient stack space for signal delivery. */
 	longjmp(buf, ret);
 }