Skip to content

Commit

Permalink
Merging from develop
Browse files Browse the repository at this point in the history
  • Loading branch information
raulssorban committed Jun 7, 2024
2 parents 77f03ab + 792c40e commit 40c4d8c
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 17 deletions.
2 changes: 1 addition & 1 deletion Carbon.Core/Carbon.Components/Carbon.Bootstrap
2 changes: 1 addition & 1 deletion Carbon.Core/Carbon.Components/Carbon.Common
2 changes: 1 addition & 1 deletion Carbon.Core/Carbon.Hooks/Carbon.Hooks.Base
25 changes: 11 additions & 14 deletions Carbon.Core/Carbon/src/Jobs/ScriptCompilationThread.cs
Original file line number Diff line number Diff line change
Expand Up @@ -59,14 +59,14 @@ public class ScriptCompilationThread : BaseThreadedJob
internal static ConcurrentDictionary<string, byte[]> _extensionCompilationCache = new();
internal static Dictionary<string, PortableExecutableReference> _referenceCache = new();
internal static Dictionary<string, PortableExecutableReference> _extensionReferenceCache = new();
internal static readonly string[] _libraryDirectories = new[]
{
internal static readonly string[] _libraryDirectories =
[
Defines.GetLibFolder(),
Defines.GetManagedFolder(),
Defines.GetRustManagedFolder(),
Defines.GetManagedModulesFolder(),
Defines.GetExtensionsFolder()
};
];

internal static byte[] _getPlugin(string name)
{
Expand Down Expand Up @@ -147,12 +147,10 @@ internal void _injectReference(string id, string name, List<MetadataReference> r
{
foreach (var file in OsEx.Folder.GetFilesWithExtension(directory, "dll"))
{
if (file.Contains(name))
{
raw = OsEx.File.ReadBytes(file);
found = true;
break;
}
if (!file.Contains(name)) continue;
raw = OsEx.File.ReadBytes(file);
found = true;
break;
}

if (found) break;
Expand All @@ -169,12 +167,11 @@ internal void _injectReference(string id, string name, List<MetadataReference> r
var processedReference = MetadataReference.CreateFromStream(mem);

references.Add(processedReference);
if (!_referenceCache.ContainsKey(name)) _referenceCache.Add(name, processedReference);
else _referenceCache[name] = processedReference;
_referenceCache[name] = processedReference;
Logger.Debug(id, $"Added common reference '{name}'", 4);
}
}
internal void _injectExtensionReference(string id, string name, List<MetadataReference> references)
internal void _injectExtensionReference(string name, List<MetadataReference> references)
{
if (_extensionReferenceCache.TryGetValue(name, out var reference))
{
Expand Down Expand Up @@ -233,7 +230,7 @@ internal List<MetadataReference> _addReferences()
{
try
{
_injectExtensionReference(id, Path.GetFileName(item.Value.Key), references);
_injectExtensionReference(Path.GetFileName(item.Value.Key), references);
}
catch (System.Exception ex)
{
Expand Down Expand Up @@ -283,7 +280,7 @@ public override void Start()
var extensionFile = Path.Combine(Defines.GetExtensionsFolder(), $"{reference}.dll");
if (OsEx.File.Exists(extensionFile))
{
_injectExtensionReference(reference, extensionFile, references);
_injectExtensionReference(extensionFile, references);
continue;
}

Expand Down

0 comments on commit 40c4d8c

Please sign in to comment.