Author: zothar
Date: 2006-11-26 19:08:51 +0000 (Sun, 26 Nov 2006)
New Revision: 11061

Modified:
   trunk/freenet/src/freenet/node/NodeStarter.java
Log:
freenet.jar side of updated freenet-ext.jar version providing code, both 
build-time and run-time versions.  This should fix the problem with the node 
not starting with older version fo freenet-ext.jar.  This code probably needs 
to be _built_ with freenet-ext.jar r11059, but should _run_ with older versions 
of freenet-ext.jar  (I doubt nextgens has gotten back to update the version 
used by the auto-builder yet.)

Modified: trunk/freenet/src/freenet/node/NodeStarter.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeStarter.java     2006-11-26 18:07:52 UTC 
(rev 11060)
+++ trunk/freenet/src/freenet/node/NodeStarter.java     2006-11-26 19:08:51 UTC 
(rev 11061)
@@ -103,14 +103,29 @@
                return new Integer(-2);
        }

-       try{     
+       try{
+               extBuildNumber = ExtVersion.buildNumber;
+                       extRevisionNumber = ExtVersion.cvsRevision;
+                       String builtWithMessage = "freenet.jar built with 
freenet-ext.jar Build #"+extBuildNumber+" r"+extRevisionNumber;
+                       Logger.normal(this, builtWithMessage);
+                       System.out.println(builtWithMessage);
                extBuildNumber = ExtVersion.buildNumber();
-                       if(ExtVersion.cvsRevision.equals("-2")) {
-                               extRevisionNumber = ExtVersion.cvsRevision;
-                       } else {
-                               extRevisionNumber = ExtVersion.cvsRevision;
+                       if(extBuildNumber == -42) {
+                               extBuildNumber = ExtVersion.extBuildNumber();
+                               extRevisionNumber = 
ExtVersion.extRevisionNumber();
                        }
-               if(extBuildNumber == 0 || extRevisionNumber == null) throw new 
Throwable();
+                       if(extBuildNumber == 0) {
+                               String buildMessage = "extBuildNumber is 0; 
perhaps your freenet-ext.jar file is corrupted?";
+                               Logger.error(this, buildMessage);
+                               System.err.println(buildMessage);
+                               extBuildNumber = -1;
+                       }
+                       if(extRevisionNumber == null) {
+                               String revisionMessage = "extRevisionNumber is 
null; perhaps your freenet-ext.jar file is corrupted?";
+                               Logger.error(this, revisionMessage);
+                               System.err.println(revisionMessage);
+                               extRevisionNumber = "INVALID";
+                       }
        }catch(Throwable t){     
                // Compatibility code ... will be removed
                Logger.error(this, "Unable to get the version of your 
freenet-ext file : it's probably corrupted!");


Reply via email to