Commit Graph

73770 Commits

Author SHA1 Message Date
Jim Blandy
32f475624f Bug 672736: Implement the 'findReferences' shell function. r=jorendorff
findReferences(thing)

Walk the entire heap, looking for references to |thing|, and return a
"references object" describing what we found.

Each property of the references object describes one kind of reference. The
property's name is the label supplied to MarkObject, JS_CALL_TRACER, or what
have you, prefixed with "edge: " to avoid collisions with system properties
(like "toString" and "__proto__"). The property's value is an array of things
that refer to |thing| via that kind of reference. Ordinary references from
one object to another are named after the property name (with the "edge: "
prefix).

Garbage collection roots appear as references from 'null'. We use the name
given to the root (with the "edge: " prefix) as the name of the reference.

Note that the references object does record references from objects that are
only reachable via |thing| itself, not just the references reachable
themselves from roots that keep |thing| from being collected. (We could make
this distinction if it is useful.)

If any references are found by the conservative scanner, the references
object will have a property named "edge: machine stack"; the referrers will
be 'null', because they are roots.

js> var o = { x: { y: { z: {} } }}
js> findReferences(o.x.y.z)
({'edge: z':[{z:{}}], 'edge: machine stack':[null, null, null, null, null]})
js> o = { get x() { return 42 } }
({get x () {return 42;}})
js> findReferences(Object.getOwnPropertyDescriptor(o, 'x').get)
({'edge: shape; x getter':[{get x () {return 42;}}],
  'edge: constructor':[{}],
  'edge: machine stack':[null, null, null, null, null],
  'edge: get':[{configurable:true,
                enumerable:true,
                get:#1=(function () {return 42;}),
                set:(void 0)}]})
js> findReferences(Math.atan2)
({'edge: atan2':[Math], 'edge: machine stack':[null, null, null, null, null]})
js> findReferences(o)
({'edge: o':[{o:{get x () {return 42;}}}], 'edge: machine stack':[null, null, null, null, null]})
js>
2011-08-03 20:19:38 -07:00
Ali Juma
6224d810fd Bug 675210 - Postpone texture creation on Android to prevent internal format errors. r=mwoodrow 2011-08-03 23:18:31 -04:00
Matt Woodrow
c296cab4d8 Bug 675470 - Handle eCSSKeyword_interpolatematrix in AddTransformLists. r=dbaron 2011-08-04 14:08:37 +12:00
Michael Wu
bfc8ebbc5c Bug 675567 - Fix PRBool/JSBool mixups, r=mrbkap 2011-08-03 18:59:10 -07:00
Michael Wu
48f2ffa17a Bug 675873 - Switch nsHttpConnectionMgr from nsHashtable to nsClassHashtable, r=bz 2011-08-03 18:59:10 -07:00
Tim Taubert
e608cd7642 Bug 666475 - Intermittent browser_tabview_privatebrowsing.js | Test timed out; r=ehsan 2011-08-04 03:49:43 +02:00
Tim Taubert
2c846a49c3 Bug 651643 - Private browsing service executes transition even when no mode switch required; r=ehsan,zpao 2011-08-04 03:49:38 +02:00
Jason Orendorff
aeda130b6d Bug 673070 - Fix name lookups in let scopes a bit more ("Assertion failure: sharedBlock" with e4x after fixing bug 646968). r=brendan. 2011-08-03 20:13:56 -05:00
Justin Dolske
2defc58264 Remove trailing whitespace from login manager and satchel. b=none 2011-08-03 17:52:47 -07:00
Justin Dolske
202caee5f8 Bug 669217 - Remove nsISecurityCheckedComponent from videocontrols. r=mrbkap 2011-08-03 17:52:45 -07:00
Patrick McManus
a18697492c bug 676277 - websockets onmessage event.origin should be ws://* r=sicking 2011-08-03 20:32:23 -04:00
Taras Glek
6769ff0594 Bug 675737: Calculate time taken for by write/open/sync per db + main/other thread r=mak 2011-08-03 17:05:29 -07:00
Honza Bambas
333edf60a8 Bug 662511 - localStorage.key() gets out-of-sync when localStorage is updated in a separate window, r=jst 2011-08-03 23:36:51 +02:00
Honza Bambas
a5507482fc Bug 675617 - Fix browser_installssl.js to support keep-alive connections (add Connection: close ^headers^ files), r=dtownsend 2011-08-03 23:36:50 +02:00
Honza Bambas
de967ceeda Bug 675616 - Change usage of localhost:8888 to mochi.test:8888 in test_css_cross_domain.html, r=zwol 2011-08-03 23:36:49 +02:00
Honza Bambas
31244a0e63 Bug 675613 - Increase limit for thread number in ssltunnel, r=ted.mielczarek 2011-08-03 23:36:49 +02:00
Teddy Ni
2bb08bd2fb Bug 653423 - Undo option is grayed out although action is applicable in Scratchpad; r=rcampbell,gavin.sharp approval-mozilla-aurora=gavin.sharp 2011-08-03 16:42:44 -03:00
Jez Ng
393c1a4a80 Bug 675359 - Follow-up fix for bug 588506: Remove unused code. r=zpao 2011-08-03 11:20:32 -07:00
Jez Ng
13e79f8b7f Bug 440098 - Bookmarks opened via "Open All in Tabs" should not replace current tab. r=mak 2011-08-03 11:19:55 -07:00
Javi Rueda
54d81c92cc Bug 625018 - Duplicated access key for search engines entry in update panel, r=gavin 2011-08-03 11:16:09 -07:00
Margaret Leibovic
506ca451b9 Bug 670341 - about:permissions queries hosts for favicons, r=mak 2011-08-03 11:09:10 -07:00
Tim Taubert
c437e5e1f6 merge the last green changeset on m-c to fx-team 2011-08-03 16:45:19 +02:00
Marco Bonardo
b92ca56a08 Merge last green changeset from mozilla-inbound to mozilla-central 2011-08-03 10:46:22 +02:00
Mark Finkle
e1814fad02 Bug 676052 - gingerbread theme for android 2.3.5 [r=mbrubeck] 2011-08-03 01:48:13 -04:00
Tim Taubert
78553de4f1 merge the last green changeset on m-c to fx-team 2011-08-03 07:41:10 +02:00
Tim Taubert
a801bf5ebe Bug 673196 - When creating a new TabGroup near the edge of the screen in Panorama, a part of it is invisible; r=dietrich 2011-08-03 07:38:07 +02:00
Tim Taubert
00301a3c9f Bug 673729 - When a stacked group's expand button is clicked the group starts to zoom; r=dietrich 2011-08-03 07:38:07 +02:00
Tim Taubert
433e3b3fdf Bug 625668 - Resizes for single groups don't stick correctly, returning them to their userSize values; r=dietrich 2011-08-03 07:38:07 +02:00
Mark Finkle
80fe888cfa Bug 675920 - Difficult to select text if you don't tap directly on text [r=wjohnston] 2011-08-03 00:23:40 -04:00
Mounir Lamouri
7f8f6d95bf Bug 670986 - Create nsLocation.h to declare nsLocation instead of doing that in nsGlobalWindow.h. r=jst 2011-08-02 21:22:40 -07:00
Masayuki Nakano
1380b10143 Bug 675865 backout new dragginf for selection handling code from Mozilla8 r=smaug (backed out patches are: bug 552707, bug 644621, bug 670058, bug 670508, bug 671319) 2011-08-03 12:39:02 +09:00
Chris Double
155df8e73f Bug 666132: Account for trailing data in the last frame of audio data in ogg backend debug code - r=cpearce 2011-08-03 15:08:56 +12:00
Chris Double
8a2bd27f46 Bug 675839 - Update playback position more frequently when writing in linux backend for libsydneyaudio - r=kinetik 2011-08-03 15:08:53 +12:00
Matt Woodrow
05f861d628 Bug 505115 - Part 12b - Layout changes to use -moz-perspective-origin. r=roc 2011-08-03 15:04:24 +12:00
Matt Woodrow
f015e13bb5 Bug 505115 - Part 12a - Implement -moz-perspective-origin style property. r=dbaron 2011-08-03 15:04:24 +12:00
Matt Woodrow
62d1425e0b Bug 505115 - Part 11b - Layout changes to use a z component for -moz-transform-origin. r=roc 2011-08-03 15:04:23 +12:00
Matt Woodrow
ab8f7fa56f Bug 505115 - Part 11a - Add nsCSSValueTriplet and optionally read a z component to -moz-transform-origin. r=dbaron 2011-08-03 15:04:23 +12:00
Matt Woodrow
fe4345bd93 Bug 505115 - Part 10 - Implement the backface-visibility CSS property. r=dbaron 2011-08-03 15:04:22 +12:00
Matt Woodrow
7b27325b26 Bug 505115 - Part 9 - Implement the perspective() transform function and the perspective CSS property. r=dbaron 2011-08-03 15:04:22 +12:00
Matt Woodrow
fd49690163 Bug 505115 - Part 8c - Use ray tracing to untransform 2d points on a 3d plane. r=roc 2011-08-03 15:04:21 +12:00
Matt Woodrow
ed6a68e2ae Bug 505115 - Part 8b - Add 3D Point support, and ray tracing to gfx3DMatrix. r=bjacob, sr=roc 2011-08-03 15:04:20 +12:00
Matt Woodrow
9486dc0d39 Bug 505115 - Part 8a - Add BasePoint3D and gfxPoint3D. r=roc 2011-08-03 15:04:20 +12:00
Matt Woodrow
cd05bbfd33 Bug 505115 - Part 7 - Layers support for 3d transforms. r=roc 2011-08-03 15:04:20 +12:00
Matt Woodrow
ada52f1e13 Bug 505115 - Part 6 - Implement the 3d -moz-transform functions. r=dbaron 2011-08-03 15:04:19 +12:00
Matt Brubeck
b4edd24765 Back out 52702d275995 (bug 647391) because of xpcshell test failures 2011-08-02 19:59:22 -07:00
Matt Brubeck
96deef1828 Bug 669851 - Update reftest annotations for tests that no longer have Android-specific failures 2011-08-02 19:57:42 -07:00
Frank Yan
8b1abc8a98 Bug 554717 - Prevent audio/video controls from inheriting list-style-image. 2011-08-02 17:43:08 -07:00
Jason Duell
120257bba4 Bug 647391 - Increase maximum size for objects stored in disk cache. r=michal 2011-08-02 17:12:25 -07:00
Patrick McManus
c0f9203b99 bug 667853: Missing close() event if websocket::init fails. r=mcmanus, jdm 2011-08-02 16:55:17 -07:00
Jason Duell
36eefd61dd bug 674689: Delay Cache.trash delete to avoid startup I/O contention. r=michal 2011-08-02 16:54:55 -07:00