From 453fa4dd1c50833aa2abda896cede2f2eb01572f Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Fri, 29 Oct 2010 23:14:20 +0200 Subject: [PATCH] Fixing ticket #498 --- akka-actor/src/main/scala/actor/Supervisor.scala | 5 +---- akka-typed-actor/src/main/scala/actor/TypedActor.scala | 6 ++++-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/akka-actor/src/main/scala/actor/Supervisor.scala b/akka-actor/src/main/scala/actor/Supervisor.scala index 1f30f1a9c8..548c0bd0fb 100644 --- a/akka-actor/src/main/scala/actor/Supervisor.scala +++ b/akka-actor/src/main/scala/actor/Supervisor.scala @@ -131,6 +131,7 @@ sealed class Supervisor(handler: FaultHandlingStrategy) { servers.map(server => server match { case Supervise(actorRef, lifeCycle, remoteAddress) => + remoteAddress.foreach { address => actorRef.makeRemote(address.hostname, address.port) } actorRef.start val className = actorRef.actor.getClass.getName val currentActors = { @@ -141,10 +142,6 @@ sealed class Supervisor(handler: FaultHandlingStrategy) { _childActors.put(className, actorRef :: currentActors) actorRef.lifeCycle = lifeCycle supervisor.link(actorRef) - remoteAddress.foreach { address => - RemoteServerModule.registerActor( - new InetSocketAddress(address.hostname, address.port), actorRef.uuid, actorRef) - } case supervisorConfig @ SupervisorConfig(_, _) => // recursive supervisor configuration val childSupervisor = Supervisor(supervisorConfig) supervisor.link(childSupervisor.supervisor) diff --git a/akka-typed-actor/src/main/scala/actor/TypedActor.scala b/akka-typed-actor/src/main/scala/actor/TypedActor.scala index 46ac719186..ac5516dfb2 100644 --- a/akka-typed-actor/src/main/scala/actor/TypedActor.scala +++ b/akka-typed-actor/src/main/scala/actor/TypedActor.scala @@ -920,8 +920,10 @@ private[akka] object AspectInitRegistry extends ListenerManagement { */ def unregister(proxy: AnyRef): AspectInit = { val init = initializations.remove(proxy) - notifyListeners(AspectInitUnregistered(proxy, init)) - init.actorRef.stop + if (init ne null) { + notifyListeners(AspectInitUnregistered(proxy, init)) + init.actorRef.stop + } init } }