11#nullable enable
22
3+ using System ;
4+
35namespace Java . Interop {
46
57partial class JniPeerMembers {
@@ -12,7 +14,9 @@ public bool GetBooleanValue (
1214JniPeerMembers . AssertSelf ( self ) ;
1315
1416var f = GetFieldInfo ( encodedMember ) ;
15- return JniEnvironment . InstanceFields . GetBooleanField ( self . PeerReference , f ) ;
17+ var r = JniEnvironment . InstanceFields . GetBooleanField ( self . PeerReference , f ) ;
18+ GC . KeepAlive ( self ) ;
19+ return r ;
1620}
1721
1822public void SetValue ( string encodedMember , IJavaPeerable self , bool value )
@@ -21,6 +25,7 @@ public void SetValue (string encodedMember, IJavaPeerable self, bool value)
2125
2226var f = GetFieldInfo ( encodedMember ) ;
2327JniEnvironment . InstanceFields . SetBooleanField ( self . PeerReference , f , value ) ;
28+ GC . KeepAlive ( self ) ;
2429}
2530
2631public sbyte GetSByteValue (
@@ -30,7 +35,9 @@ public sbyte GetSByteValue (
3035JniPeerMembers . AssertSelf ( self ) ;
3136
3237var f = GetFieldInfo ( encodedMember ) ;
33- return JniEnvironment . InstanceFields . GetByteField ( self . PeerReference , f ) ;
38+ var r = JniEnvironment . InstanceFields . GetByteField ( self . PeerReference , f ) ;
39+ GC . KeepAlive ( self ) ;
40+ return r ;
3441}
3542
3643public void SetValue ( string encodedMember , IJavaPeerable self , sbyte value )
@@ -39,6 +46,7 @@ public void SetValue (string encodedMember, IJavaPeerable self, sbyte value)
3946
4047var f = GetFieldInfo ( encodedMember ) ;
4148JniEnvironment . InstanceFields . SetByteField ( self . PeerReference , f , value ) ;
49+ GC . KeepAlive ( self ) ;
4250}
4351
4452public char GetCharValue (
@@ -48,7 +56,9 @@ public char GetCharValue (
4856JniPeerMembers . AssertSelf ( self ) ;
4957
5058var f = GetFieldInfo ( encodedMember ) ;
51- return JniEnvironment . InstanceFields . GetCharField ( self . PeerReference , f ) ;
59+ var r = JniEnvironment . InstanceFields . GetCharField ( self . PeerReference , f ) ;
60+ GC . KeepAlive ( self ) ;
61+ return r ;
5262}
5363
5464public void SetValue ( string encodedMember , IJavaPeerable self , char value )
@@ -57,6 +67,7 @@ public void SetValue (string encodedMember, IJavaPeerable self, char value)
5767
5868var f = GetFieldInfo ( encodedMember ) ;
5969JniEnvironment . InstanceFields . SetCharField ( self . PeerReference , f , value ) ;
70+ GC . KeepAlive ( self ) ;
6071}
6172
6273public short GetInt16Value (
@@ -66,7 +77,9 @@ public short GetInt16Value (
6677JniPeerMembers . AssertSelf ( self ) ;
6778
6879var f = GetFieldInfo ( encodedMember ) ;
69- return JniEnvironment . InstanceFields . GetShortField ( self . PeerReference , f ) ;
80+ var r = JniEnvironment . InstanceFields . GetShortField ( self . PeerReference , f ) ;
81+ GC . KeepAlive ( self ) ;
82+ return r ;
7083}
7184
7285public void SetValue ( string encodedMember , IJavaPeerable self , short value )
@@ -75,6 +88,7 @@ public void SetValue (string encodedMember, IJavaPeerable self, short value)
7588
7689var f = GetFieldInfo ( encodedMember ) ;
7790JniEnvironment . InstanceFields . SetShortField ( self . PeerReference , f , value ) ;
91+ GC . KeepAlive ( self ) ;
7892}
7993
8094public int GetInt32Value (
@@ -84,7 +98,9 @@ public int GetInt32Value (
8498JniPeerMembers . AssertSelf ( self ) ;
8599
86100var f = GetFieldInfo ( encodedMember ) ;
87- return JniEnvironment . InstanceFields . GetIntField ( self . PeerReference , f ) ;
101+ var r = JniEnvironment . InstanceFields . GetIntField ( self . PeerReference , f ) ;
102+ GC . KeepAlive ( self ) ;
103+ return r ;
88104}
89105
90106public void SetValue ( string encodedMember , IJavaPeerable self , int value )
@@ -93,6 +109,7 @@ public void SetValue (string encodedMember, IJavaPeerable self, int value)
93109
94110var f = GetFieldInfo ( encodedMember ) ;
95111JniEnvironment . InstanceFields . SetIntField ( self . PeerReference , f , value ) ;
112+ GC . KeepAlive ( self ) ;
96113}
97114
98115public long GetInt64Value (
@@ -102,7 +119,9 @@ public long GetInt64Value (
102119JniPeerMembers . AssertSelf ( self ) ;
103120
104121var f = GetFieldInfo ( encodedMember ) ;
105- return JniEnvironment . InstanceFields . GetLongField ( self . PeerReference , f ) ;
122+ var r = JniEnvironment . InstanceFields . GetLongField ( self . PeerReference , f ) ;
123+ GC . KeepAlive ( self ) ;
124+ return r ;
106125}
107126
108127public void SetValue ( string encodedMember , IJavaPeerable self , long value )
@@ -111,6 +130,7 @@ public void SetValue (string encodedMember, IJavaPeerable self, long value)
111130
112131var f = GetFieldInfo ( encodedMember ) ;
113132JniEnvironment . InstanceFields . SetLongField ( self . PeerReference , f , value ) ;
133+ GC . KeepAlive ( self ) ;
114134}
115135
116136public float GetSingleValue (
@@ -120,7 +140,9 @@ public float GetSingleValue (
120140JniPeerMembers . AssertSelf ( self ) ;
121141
122142var f = GetFieldInfo ( encodedMember ) ;
123- return JniEnvironment . InstanceFields . GetFloatField ( self . PeerReference , f ) ;
143+ var r = JniEnvironment . InstanceFields . GetFloatField ( self . PeerReference , f ) ;
144+ GC . KeepAlive ( self ) ;
145+ return r ;
124146}
125147
126148public void SetValue ( string encodedMember , IJavaPeerable self , float value )
@@ -129,6 +151,7 @@ public void SetValue (string encodedMember, IJavaPeerable self, float value)
129151
130152var f = GetFieldInfo ( encodedMember ) ;
131153JniEnvironment . InstanceFields . SetFloatField ( self . PeerReference , f , value ) ;
154+ GC . KeepAlive ( self ) ;
132155}
133156
134157public double GetDoubleValue (
@@ -138,7 +161,9 @@ public double GetDoubleValue (
138161JniPeerMembers . AssertSelf ( self ) ;
139162
140163var f = GetFieldInfo ( encodedMember ) ;
141- return JniEnvironment . InstanceFields . GetDoubleField ( self . PeerReference , f ) ;
164+ var r = JniEnvironment . InstanceFields . GetDoubleField ( self . PeerReference , f ) ;
165+ GC . KeepAlive ( self ) ;
166+ return r ;
142167}
143168
144169public void SetValue ( string encodedMember , IJavaPeerable self , double value )
@@ -147,6 +172,7 @@ public void SetValue (string encodedMember, IJavaPeerable self, double value)
147172
148173var f = GetFieldInfo ( encodedMember ) ;
149174JniEnvironment . InstanceFields . SetDoubleField ( self . PeerReference , f , value ) ;
175+ GC . KeepAlive ( self ) ;
150176}
151177
152178public JniObjectReference GetObjectValue (
@@ -156,7 +182,9 @@ public JniObjectReference GetObjectValue (
156182JniPeerMembers . AssertSelf ( self ) ;
157183
158184var f = GetFieldInfo ( encodedMember ) ;
159- return JniEnvironment . InstanceFields . GetObjectField ( self . PeerReference , f ) ;
185+ var r = JniEnvironment . InstanceFields . GetObjectField ( self . PeerReference , f ) ;
186+ GC . KeepAlive ( self ) ;
187+ return r ;
160188}
161189
162190public void SetValue ( string encodedMember , IJavaPeerable self , JniObjectReference value )
@@ -165,6 +193,7 @@ public void SetValue (string encodedMember, IJavaPeerable self, JniObjectReferen
165193
166194var f = GetFieldInfo ( encodedMember ) ;
167195JniEnvironment . InstanceFields . SetObjectField ( self . PeerReference , f , value ) ;
196+ GC . KeepAlive ( self ) ;
168197}
169198}
170199
0 commit comments