Skip to content

Commit 844acdb

Browse files
committed
fix: avoid throwing exception when using NetworkList without a NetworkManager (#2539)
1 parent e529c74 commit 844acdb

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

com.unity.netcode.gameobjects/CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ Additional documentation and release notes are available at [Multiplayer Documen
2222
- Fixed issue where `NetworkAnimator` would log an error if there was no destination transition information. (#3384)
2323
- Fixed initial `NetworkTransform` spawn, ensure it uses world space. (#3361)
2424
- Fixed issue where `AnticipatedNetworkVariable` previous value returned by `AnticipatedNetworkVariable.OnAuthoritativeValueChanged` is updated correctly on the non-authoritative side. (#3322)
25+
- Fixed usage of `NetworkList` throwing exception when used without a NetworkManager in scene. (#2539)
2526

2627
### Changed
2728

com.unity.netcode.gameobjects/Runtime/NetworkVariable/Collections/NetworkList.cs

+6-6
Original file line numberDiff line numberDiff line change
@@ -425,7 +425,7 @@ public IEnumerator<T> GetEnumerator()
425425
public void Add(T item)
426426
{
427427
// check write permissions
428-
if (!CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
428+
if (m_NetworkBehaviour && !CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
429429
{
430430
LogWritePermissionError();
431431
return;
@@ -452,7 +452,7 @@ public void Add(T item)
452452
public void Clear()
453453
{
454454
// check write permissions
455-
if (!CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
455+
if (m_NetworkBehaviour && !CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
456456
{
457457
LogWritePermissionError();
458458
return;
@@ -490,7 +490,7 @@ public bool Contains(T item)
490490
public bool Remove(T item)
491491
{
492492
// check write permissions
493-
if (!CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
493+
if (m_NetworkBehaviour && !CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
494494
{
495495
LogWritePermissionError();
496496
return false;
@@ -539,7 +539,7 @@ public int IndexOf(T item)
539539
public void Insert(int index, T item)
540540
{
541541
// check write permissions
542-
if (!CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
542+
if (m_NetworkBehaviour && !CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
543543
{
544544
LogWritePermissionError();
545545
return;
@@ -575,7 +575,7 @@ public void Insert(int index, T item)
575575
public void RemoveAt(int index)
576576
{
577577
// check write permissions
578-
if (!CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
578+
if (m_NetworkBehaviour && !CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
579579
{
580580
LogWritePermissionError();
581581
return;
@@ -608,7 +608,7 @@ public T this[int index]
608608
set
609609
{
610610
// check write permissions
611-
if (!CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
611+
if (m_NetworkBehaviour && !CanClientWrite(m_NetworkBehaviour.NetworkManager.LocalClientId))
612612
{
613613
LogWritePermissionError();
614614
return;

0 commit comments

Comments
 (0)