Ignore:
Timestamp:
Sep 12, 2014, 11:14:11 AM (10 years ago)
Author:
alloc
Message:

fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • binary-improvements/7dtd-server-fixes/src/NetConnections/ConsoleOutputSeparator.cs

    r132 r189  
    2828                        Log.Out ("Executed command \"" + _command + "\" from player \"" + _playerID + "\"");
    2929
    30                         object obj = netCommandQueue;
    31                         Monitor.Enter (obj);
    32                         try {
     30                        lock (netCommandQueue) {
    3331                                isCurrentCommandFromClient = true;
    3432                                console.issuerOfCurrentClientCommand = _networkPlayer;
    3533                                console.ExecuteClientCmdInternal (_playerID, _command);
    3634                                isCurrentCommandFromClient = false;
    37                         } finally {
    38                                 Monitor.Exit (obj);
    3935                        }
    4036
     
    6157                {
    6258                        if (netCommandQueue.Count > 0) {
    63                                 object obj = netCommandQueue;
    64                                 Monitor.Enter (obj);
    65                                 try {
     59                                lock (netCommandQueue) {
    6660                                        issuerOfCurrentCommand = netCommandQueue [0].client;
    67                                         console.ExecuteRemoteCmdInternal (netCommandQueue [0].command, false);
     61                                        try {
     62                                                console.ExecuteRemoteCmdInternal (netCommandQueue [0].command, false);
     63                                        } catch (Exception e) {
     64                                                Log.Out("Exception while executing command: " + e);
     65                                        }
    6866                                        netCommandQueue.RemoveAt (0);
    6967                                        issuerOfCurrentCommand = null;
    70                                 } finally {
    71                                         Monitor.Exit (obj);
    7268                                }
    7369                        }
     
    7672                public static void QueueNetCommand (string _line, IConnection _con)
    7773                {
    78                         object obj = netCommandQueue;
    79                         Monitor.Enter (obj);
    80                         try {
     74                        lock (netCommandQueue) {
    8175                                netCommandQueue.Add (new NetCommand (_line, _con));
    82                         } finally {
    83                                 Monitor.Exit (obj);
    8476                        }
    8577                }
Note: See TracChangeset for help on using the changeset viewer.