Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetCodePageFromName() [2/2]

static int System.Text.EncodingTable.GetCodePageFromName ( string name)
inlinestaticpackage

Definition at line 152 of file EncodingTable.cs.

153 {
154 if (name == null)
155 {
156 return 0;
157 }
158 s_cacheLock.EnterUpgradeableReadLock();
159 try
160 {
161 if (s_nameToCodePageCache.TryGetValue(name, out var value))
162 {
163 return value;
164 }
166 if (value == 0)
167 {
168 return 0;
169 }
170 s_cacheLock.EnterWriteLock();
171 try
172 {
173 if (s_nameToCodePageCache.TryGetValue(name, out var value2))
174 {
175 return value2;
176 }
177 s_nameToCodePageCache.Add(name, value);
178 return value;
179 }
180 finally
181 {
182 s_cacheLock.ExitWriteLock();
183 }
184 }
185 finally
186 {
187 s_cacheLock.ExitUpgradeableReadLock();
188 }
189 }
static readonly Dictionary< string, int > s_nameToCodePageCache
static int InternalGetCodePageFromName(string name)
static readonly ReaderWriterLockSlim s_cacheLock

References System.Text.EncodingTable.InternalGetCodePageFromName(), System.Text.EncodingTable.s_cacheLock, System.Text.EncodingTable.s_nameToCodePageCache, and System.value.