File tree 2 files changed +28
-1
lines changed 2 files changed +28
-1
lines changed Original file line number Diff line number Diff line change @@ -856,7 +856,12 @@ runtime·newstack(void)
856
856
void
857
857
runtime·gostartcallfn (Gobuf * gobuf , FuncVal * fv )
858
858
{
859
- runtime·gostartcall (gobuf , fv -> fn , fv );
859
+ void * fn ;
860
+
861
+ fn = nil ;
862
+ if (fv != nil )
863
+ fn = fv -> fn ;
864
+ runtime·gostartcall (gobuf , fn , fv );
860
865
}
861
866
862
867
// Maybe shrink the stack being used by gp.
Original file line number Diff line number Diff line change
1
+ // run
2
+
3
+ // Copyright 2014 The Go Authors. All rights reserved.
4
+ // Use of this source code is governed by a BSD-style
5
+ // license that can be found in the LICENSE file.
6
+
7
+ // Issue 8047. Defer setup during panic shouldn't crash for nil defer.
8
+
9
+ package main
10
+
11
+ func main () {
12
+ defer func () {
13
+ recover ()
14
+ }()
15
+ f ()
16
+ }
17
+
18
+ func f () {
19
+ var g func ()
20
+ defer g ()
21
+ panic (1 )
22
+ }
You can’t perform that action at this time.
0 commit comments