Author: toad
Date: 2007-12-06 19:32:56 +0000 (Thu, 06 Dec 2007)
New Revision: 16370

Modified:
   trunk/freenet/src/freenet/io/comm/Message.java
Log:
Doh - fix NPE

Modified: trunk/freenet/src/freenet/io/comm/Message.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/Message.java      2007-12-06 18:20:07 UTC 
(rev 16369)
+++ trunk/freenet/src/freenet/io/comm/Message.java      2007-12-06 19:32:56 UTC 
(rev 16370)
@@ -117,8 +117,13 @@
        private Message(MessageType spec, PeerContext source, int 
recvByteCount) {
                localInstantiationTime = System.currentTimeMillis();
                _spec = spec;
-               _internal = source == null;
-               _sourceRef = source.getWeakRef();
+               if(source == null) {
+                       _internal = true;
+                       _sourceRef = null;
+               } else {
+                       _internal = false;
+                       _sourceRef = source.getWeakRef();
+               }
                _receivedByteCount = recvByteCount;
        }

@@ -246,7 +251,7 @@
        }

        public PeerContext getSource() {
-               return (PeerContext) _sourceRef.get();
+               return _sourceRef == null ? null : (PeerContext) 
_sourceRef.get();
        }

        public boolean isInternal() {


Reply via email to