@@ -116,6 +116,7 @@ import Control.Distributed.Process.Internal.Types
116 , payloadToMessage
116 , payloadToMessage
117 , createMessage
117 , createMessage
118 , runLocalProcess
118 , runLocalProcess
119+ , firstNonReservedProcessId
120import Control.Distributed.Process.Serializable (Serializable)
121import Control.Distributed.Process.Serializable (Serializable)
121import Control.Distributed.Process.Internal.Messaging
122import Control.Distributed.Process.Internal.Messaging
@@ -151,7 +152,7 @@ createBareLocalNode endPoint rtable = do
151 unq <- randomIO
152 unq <- randomIO
152 state <- newMVar LocalNodeState
153 state <- newMVar LocalNodeState
153 { _localProcesses = Map.empty
154 { _localProcesses = Map.empty
154− , _localPidCounter = 0
155+ , _localPidCounter = firstNonReservedProcessId
155 , _localPidUnique = unq
156 , _localPidUnique = unq
156 , _localConnections = Map.empty
157 , _localConnections = Map.empty
@@ -235,7 +236,7 @@ forkProcess node proc = modifyMVar (localState node) startProcess
236 newUnique <- randomIO
237 newUnique <- randomIO
237 return ( (localProcessWithId lpid ^= Just lproc)
238 return ( (localProcessWithId lpid ^= Just lproc)
238− . (localPidCounter ^= 0)
239+ . (localPidCounter ^= firstNonReservedProcessId)
239 . (localPidUnique ^= newUnique)
240 . (localPidUnique ^= newUnique)