Author: toad
Date: 2008-06-21 12:09:33 +0000 (Sat, 21 Jun 2008)
New Revision: 20556

Modified:
   branches/db4o/freenet/src/freenet/clients/http/QueueToadlet.java
Log:
Fix NPE in registerAlert.
NOTE: this should be backported, it's not a branch specific bug.

Modified: branches/db4o/freenet/src/freenet/clients/http/QueueToadlet.java
===================================================================
--- branches/db4o/freenet/src/freenet/clients/http/QueueToadlet.java    
2008-06-21 11:42:51 UTC (rev 20555)
+++ branches/db4o/freenet/src/freenet/clients/http/QueueToadlet.java    
2008-06-21 12:09:33 UTC (rev 20556)
@@ -1230,6 +1230,14 @@

        private void registerAlert(ClientRequest req) {
                final String identifier = req.getIdentifier();
+               boolean logMINOR = Logger.shouldLog(Logger.MINOR, this);
+               if(logMINOR)
+                       Logger.minor(this, "Registering alert for "+identifier);
+               if(!req.hasFinished()) {
+                       if(logMINOR)
+                               Logger.minor(this, "Request hasn't finished: 
"+req+" for "+identifier, new Exception("debug"));
+                       return;
+               }
                if(req instanceof ClientGet) {
                        FreenetURI uri = ((ClientGet)req).getURI();
                        long size = ((ClientGet)req).getDataSize();
@@ -1261,6 +1269,10 @@
                } else if(req instanceof ClientPut) {
                        FreenetURI uri = ((ClientPut)req).getFinalURI();
                        long size = ((ClientPut)req).getDataSize();
+                       if(uri == null) {
+                               Logger.error(this, "uri is null for "+req+" for 
"+identifier);
+                               return;
+                       }
                        String name = uri.getPreferredFilename();
                        String title = l10n("uploadSucceededTitle", "filename", 
name);
                        HTMLNode text = new HTMLNode("div");


Reply via email to