Skip to content

Commit 72d44cd

Browse files
committed
fix ctd due to improper event handler registration (fixes #9)
1 parent fc48b60 commit 72d44cd

4 files changed

Lines changed: 18 additions & 4 deletions

File tree

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
## 21.1.3
2+
**:bug: Bug Fixes**
3+
- Fix CTD due to improper registering of `OnAssetsLoaded` event handler
4+
- Fix CTD due to null `Readings` array access in `ReadingPacket`
5+
16
## 21.1.2
27
**:bug: Bug Fixes**
38
- Fix CTD due to accessing assets before `ASSETS_LOADED`

DurableBetterProspecting/DurableBetterProspectingSystem.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,13 @@ public override void StartPre(ICoreAPI api)
3131
var legacyConfigManager = Container.Resolve<LegacyConfigManager>();
3232
legacyConfigManager.Migrate();
3333
}
34+
35+
// Make sure that managers are instantiated
36+
{
37+
// ReSharper disable UnusedVariable
38+
var modeManager = Container.Resolve<ModeManager>();
39+
// ReSharper restore UnusedVariable
40+
}
3441
}
3542

3643
public override void Start(ICoreAPI api)

DurableBetterProspecting/Managers/ReadingManager.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,9 @@ IConfigSystem configSystem
6161

6262
private void ProcessReading(ReadingPacket packet)
6363
{
64-
_logger.Verbose("Received packet with {0} readings", packet.Readings.Length);
64+
var readingsArray = packet.Readings ?? [];
65+
66+
_logger.Verbose("Received packet with {0} readings", readingsArray.Length);
6567
var stopwatch = Stopwatch.StartNew();
6668

6769
var messageBuilder = new StringBuilder();
@@ -87,7 +89,7 @@ private void ProcessReading(ReadingPacket packet)
8789

8890
// Message: No rocks/ores found
8991
{
90-
if (packet.Readings.Length == 0)
92+
if (readingsArray.Length == 0)
9193
{
9294
var sampleEmptyString = _translations.Get("reading--sample-empty", packet.Mode is Constants.RockModeId ? rocksString : oresString);
9395

@@ -102,7 +104,7 @@ private void ProcessReading(ReadingPacket packet)
102104
}
103105

104106
// Sort readings
105-
var readings = packet.Readings.AsEnumerable();
107+
var readings = readingsArray.AsEnumerable();
106108
if (_clientConfig.Ordering.Enabled)
107109
{
108110
var ascending = _clientConfig.Ordering.Direction is OrderingDirection.Ascending;

DurableBetterProspecting/Network/ReadingPacket.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,5 @@ internal record ReadingPacket
1717
public required Vec3i? Position { get; init; }
1818

1919
[ProtoMember(4)]
20-
public required Reading[] Readings { get; init; }
20+
public required Reading[]? Readings { get; init; }
2121
}

0 commit comments

Comments
 (0)