Last Comment Bug 380398 - appversion manifest flag is broken in certain situations
: appversion manifest flag is broken in certain situations
Status: RESOLVED FIXED
: fixed1.8.0.13, fixed1.8.1.5
Product: Toolkit
Classification: Components
Component: Startup and Profile System (show other bugs)
: Trunk
: All All
: -- normal (vote)
: ---
Assigned To: Dave Townsend [:mossop]
:
: Benjamin Smedberg [:bsmedberg]
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2007-05-11 07:06 PDT by Dave Townsend [:mossop]
Modified: 2008-07-31 03:03 PDT (History)
3 users (show)
dtownsend: in‑testsuite+
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
patch rev 1 (1.39 KB, patch)
2007-05-11 10:36 PDT, Dave Townsend [:mossop]
benjamin: review+
dveditz: approval1.8.1.5+
dveditz: approval1.8.0.13+
Details | Diff | Splinter Review
testcase rev 1 (9.43 KB, patch)
2007-05-29 14:59 PDT, Dave Townsend [:mossop]
benjamin: review+
Details | Diff | Splinter Review

Description Dave Townsend [:mossop] 2007-05-11 07:06:48 PDT
The appversion manifest flag is broken if you use a simple comparison (>, <, =) and the version number to compare against is only one digit.
Comment 1 Dave Townsend [:mossop] 2007-05-11 10:36:32 PDT
Created attachment 264492 [details] [diff] [review]
patch rev 1

Fixes the length check and adds an additional check that the version to compare was actually specified.
Comment 2 Dave Townsend [:mossop] 2007-05-18 06:43:02 PDT
Checking in nsChromeRegistry.cpp;
/cvsroot/mozilla/chrome/src/nsChromeRegistry.cpp,v  <--  nsChromeRegistry.cpp
new revision: 1.352; previous revision: 1.351
done
Comment 3 Dave Townsend [:mossop] 2007-05-29 14:59:15 PDT
Created attachment 266511 [details] [diff] [review]
testcase rev 1

This testcase tests a number of scenarios for the appversion flag.

Much of the work involves creating and registering a directory service provider so that we can let the chrome registry know about our testcase manifest file, and then creating a dummy nsIXULAppInfo so we have control over it's version.

Once all that is done it is simply a case of trying to convert a chrome url for each testcase and checking that it succeeds and fails when appropriate.

I have confirmed that this passes at present, and fails with this bug backed out.
Comment 4 Benjamin Smedberg [:bsmedberg] 2007-05-29 19:24:04 PDT
Comment on attachment 266511 [details] [diff] [review]
testcase rev 1

That's pretty cool, thanks!
Comment 5 Dave Townsend [:mossop] 2007-05-30 14:53:28 PDT
Checking in Makefile.in;
/cvsroot/mozilla/chrome/Makefile.in,v  <--  Makefile.in
new revision: 1.9; previous revision: 1.8
done
RCS file: /cvsroot/mozilla/chrome/test/Makefile.in,v
done
Checking in test/Makefile.in;
/cvsroot/mozilla/chrome/test/Makefile.in,v  <--  Makefile.in
initial revision: 1.1
done
RCS file: /cvsroot/mozilla/chrome/test/unit/test_bug380398.js,v
done
Checking in test/unit/test_bug380398.js;
/cvsroot/mozilla/chrome/test/unit/test_bug380398.js,v  <--  test_bug380398.js
initial revision: 1.1
done
RCS file: /cvsroot/mozilla/chrome/test/unit/data/test_bug380398.manifest,v
done
Checking in test/unit/data/test_bug380398.manifest;
/cvsroot/mozilla/chrome/test/unit/data/test_bug380398.manifest,v  <--  test_bug380398.manifest
initial revision: 1.1
done
Comment 6 Dave Townsend [:mossop] 2007-06-04 07:34:13 PDT
Comment on attachment 264492 [details] [diff] [review]
patch rev 1

Requesting branch approval for a low risk patch that clears up a bug for add-on authors.
Comment 7 Daniel Veditz [:dveditz] 2007-06-26 15:39:19 PDT
Comment on attachment 264492 [details] [diff] [review]
patch rev 1

approved for 1.8.1.5 and 1.8.0.13, a=dveditz for release-drivers
Comment 8 Dave Townsend [:mossop] 2007-06-26 18:25:45 PDT
Checking in nsChromeRegistry.cpp;
/cvsroot/mozilla/chrome/src/nsChromeRegistry.cpp,v  <--  nsChromeRegistry.cpp
new revision: 1.338.2.4; previous revision: 1.338.2.3
done

Checking in chrome/src/nsChromeRegistry.cpp;
/cvsroot/mozilla/chrome/src/nsChromeRegistry.cpp,v  <--  nsChromeRegistry.cpp
new revision: 1.338.2.1.4.3; previous revision: 1.338.2.1.4.2
done

Note You need to log in before you can comment on or make changes to this bug.