Commit Graph

633 Commits

Author SHA1 Message Date
Kyle Machulis
5663b98bc5 Bug 855465 - Add emacs python mode comments to moz.build files; r=gps
--HG--
extra : rebase_source : 004a756492323e1a049586e85b3be5037159df20
2013-03-29 13:56:18 -07:00
Daniel Holbert
cdb46fbf89 Bug 473236, 2013 edition: Remove executable bit from files that clearly don't need it (html, xhtml, xul, svg, png, jpg, ttf files in test dirs within /layout). DONTBUILD 2013-03-25 17:01:35 -07:00
Boris Zbarsky
f75d10efbe Bug 852501 part 4. Make CreateContinuingFrame infallible. r=dholbert 2013-03-19 21:47:49 -04:00
Boris Zbarsky
462f47d89e Bug 852428 part 2. Make nsIFrame::Init infallible. r=dholbert 2013-03-19 21:47:48 -04:00
Mike Shal
ea1d9b8ba7 Bug 844654 - Part 2: Move MODULE to moz.build; rs=gps 2013-03-19 11:47:00 -07:00
Mats Palmgren
51b222839d Bug 850964 - Remove obsolete NS_FRAME_INVALIDATE_ON_MOVE flag. r=roc 2013-03-15 23:32:35 +01:00
Scott Johnson
64c588e2f9 Bug 762902: Add a new ReflowChild flag within nsContainerState to disable deletion of next-in-flow children to prevent crash. [r=mats] 2013-03-15 13:36:30 -05:00
Ed Morley
78d553c1ed Backed out changeset 4bfe5e636d68 (bug 850964) for assertions on a CLOSED TREE 2013-03-14 15:19:06 +00:00
Mats Palmgren
3247d10b9e Bug 850964 - Remove obsolete NS_FRAME_INVALIDATE_ON_MOVE flag. r=roc 2013-03-14 14:39:26 +01:00
Jeff Walden
000d820503 Bug 847480 - Blindly convert all existing mozilla::Abs users to mozilla::DeprecatedAbs. Individualized conversions to the reformed mozilla::Abs will continue until mozilla::DeprecatedAbs is unused, at which point it will be removed. r=Ms2ger 2013-03-05 15:43:30 -08:00
Matt Woodrow
981f3ba59b Bug 844750 - Don't use per-display-item invalidation for table frames. r=roc 2013-03-08 15:18:45 +13:00
Timothy Nikkel
1e3bfd6883 Bug 848421. Part 2. Remove useless PresContext argument to nsCSSRendering::FindBackground. r=mats 2013-03-07 10:03:49 -06:00
Trevor Saunders
8631e44d32 bug 846487 - remove remaining usage of some nsIDOMFooElement r=Ms2Ger 2013-02-14 10:33:16 -05:00
Jeff Walden
72eca3f9c1 Bug 835542 - Implement mozilla::Abs. r=Ms2ger
--HG--
extra : rebase_source : a3e62ff76365d27cc4cb10e4fee942ddb8b10b79
2013-02-15 19:55:36 -08:00
Gregory Szorc
4f23f29382 Bug 784841 - Part 18t: Convert /layout; f=Ms2ger rs=ted 2013-02-25 12:47:22 -08:00
L. David Baron
5ef4421fa5 Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert
Except for the changes in:
  layout/generic/nsIFrame.h (part)
  layout/style/nsComputedDOMStyle.h (all)
  layout/style/nsRuleNode.cpp (part)
  layout/style/nsStyleContext.cpp (part)
  layout/style/nsStyleContext.h (part)
(see patch 3b in the bug), this patch was written with the sed script:
s/\<GetStyle\(Font\|Color\|List\|Text\|Visibility\|Quotes\|UserInterface\|TableBorder\|SVG\|Background\|Position\|TextReset\|Display\|Content\|UIReset\|Table\|Margin\|Padding\|Border\|Outline\|XUL\|SVGReset\|Column\)\>/Style\1/g
2013-02-16 13:51:02 -08:00
Robert O'Callahan
013943dc4f Bug 840902. Part 2: Remove nsresults from various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : de498510bf8d85d9b0b2fab0137ef3be01c9adfa
2013-02-15 00:12:27 +13:00
Robert O'Callahan
a2485753ff Bug 840902. Part 1: Stop checking the results of various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : 50a3d6809ef76a25a3d02d91f2873d9ba11fdc56
2013-02-15 00:08:08 +13:00
L. David Baron
b387f0fbea Bug 841789, patch 1: Rename nsIFrame::GetStyleContext() to nsIFrame::StyleContext() since it can never return null. r=dholbert
This makes it conform to our convention that getters returning pointers
that can never be null do not begin with "Get".
2013-02-15 21:38:33 -08:00
Daniel Holbert
080169141a Bug 836954: Mark nsIFrame::GetBaseline() impls as MOZ_OVERRIDE. r=dbaron 2013-02-11 17:52:55 -08:00
Daniel Holbert
b5dc5d0c49 Bug 836957 part 3: Mark remaining nsIFrame::GetSkipSides() overrides as MOZ_OVERRIDE, and remove stale comments. r=mats 2013-02-04 08:17:31 -08:00
Daniel Holbert
ba0e8e72f0 Bug 836957 part 1: Remove unnecessary nsIFrame::GetSkipSides() overrides whose implementations are in .h files. r=mats 2013-02-04 08:17:11 -08:00
Glenna Buford
0e1581c0e7 Bug 837013: Removed virtual keyword from methods that are unnecessarily virtual in nsTableFrame. r=dholbert 2013-02-03 13:54:07 -08:00
Mats Palmgren
58e9be941e Bug 835167 - Add reftest-wait to some crashtests to fix orange. 2013-01-28 01:26:04 +01:00
Bernd
05e808bd42 Bug 371290 - crashtest 2013-01-26 21:28:56 +01:00
Gavin Sharp
42aba16dc9 Bug 368013 - crashtest 2013-01-26 21:28:56 +01:00
Jesse Ruderman
43c6b45f03 Bug 367755 - crashtest 2013-01-26 21:28:55 +01:00
Martijn Wargers
86eeb7c0fe Bug 362275, bug 367749 - crashtests 2013-01-26 21:28:55 +01:00
Martijn Wargers
f125acc5a1 Bug 347367 - crashtest. 2013-01-26 14:15:29 +01:00
Mats Palmgren
d5826be6d7 Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
L. David Baron
978e581f94 Don't distribute percentage width from column-spanning cells to columns that have no cells originating. (Bug 810586) r=dholbert
This makes the distribution of pref/min width and the distribution of
percentage width from column-spanning cells more consistent with each
other.  Having them inconsistent means that a column-spanning cell that
has both percentage width and minimum intrinsic width might distribute
those widths among its columns differently, which can then lead to the
percentages unnecessarily increasing the table's preferred intrinsic
width.

(It *might* also be worth fixing the FLEX_ALL_LARGE case in
DistributeWidthToColumns to also check for originating cells, since it's
now the only case that doesn't, except that we can't guarantee that
there are columns with originating cells, so it would really require
splitting that case, which is extra complexity that doesn't seem worth
it for such a rarely-hit and non-interoperable case.)

--HG--
extra : transplant_source : %80%C9z%F4%EF%18%E1y%BB%B3%E57%0C%3A%0B%92%2C%B8%83%AC
2013-01-02 22:58:05 -05:00
Masatoshi Kimura
ecc812a3c0 Bug 824247 - Part 3: Disable FAIL_ON_WARNINGS on not-yet-warning-free directories on MSVC. r=ted 2013-01-03 00:56:38 +09:00
Alexander Surkov
fae1108201 Bug 810572, part 2.5 - rename AccType constants again, r=tbsaunde, sr=roc 2012-12-18 10:25:52 +09:00
Mats Palmgren
acb811dff4 Bug 696640 - Don't put an existing next-in-flow for the kid into 'rowGroups' - it's either already there or it's not our child. r=roc 2012-12-17 02:21:36 +01:00
Trevor Saunders
55821aa041 bug 781409 - remove nsITableLayout r=roc,davidb 2012-08-08 09:05:17 -04:00
Alexander Surkov
5801a37df4 Bug 810572, part2 - remove 'Accessible' postfix from AccTypes constants, r=tbsaunde, sr=roc 2012-12-12 19:04:12 +09:00
Matt Woodrow
1f682fd984 Bug 805507 - Only invalidate tables when the visual overflow changes. r=roc 2012-12-12 09:39:10 +13:00
Mats Palmgren
8707071898 Bug 814713. r=bz 2012-12-10 18:40:01 +01:00
Robert O'Callahan
faea2c746e Bug 816458. Instead of removing the MAY_BE_TRANSFORMED bit in certain frame classes, add an nsIFrame::SupportsCSSTransforms method and call it when necessary. r=mats 2012-12-04 17:50:05 +13:00
Mats Palmgren
e6ad33709d Bug 817574 - Replace NS_ABS with std::abs. r=roc 2012-12-04 13:33:33 +01:00
Mats Palmgren
63fddb88b2 Bug 815315 - Make nsTableFrame::RemoveFrame remove all continuations of the removed child frame too. r=bz 2012-12-01 01:10:40 +01:00
Mats Palmgren
c232d828f7 Bug 815315 - Avoid crashing if the last row-group child frame was removed. r=bz 2012-12-01 01:10:40 +01:00
Boris Zbarsky
abcee77db3 Bug 776443 part 2. Support percent-less calc for internal table element widths. r=dbaron 2012-11-21 11:19:37 -05:00
Boris Zbarsky
6eeb17d512 Bug 776443 part 1. Support percent-less calc for internal table element heights. r=dbaron 2012-11-21 11:19:30 -05:00
Ryan VanderMeulen
4b287535f2 Backed out changesets 1a8b11ae0f4b, e02a02fd1208 (bug 776443), 86a3edf2960d (bug 812392), 26c59f23fd8f, and 288c74d7f87d (bug 812744) for mochitest orange.
CLOSED TREE
2012-11-21 12:47:40 -05:00
Boris Zbarsky
ba3c8f34ef Bug 776443 part 2. Support percent-less calc for internal table element widths. r=dbaron 2012-11-21 11:19:37 -05:00
Boris Zbarsky
84d68be849 Bug 776443 part 1. Support percent-less calc for internal table element heights. r=dbaron 2012-11-21 11:19:30 -05:00
Robert O'Callahan
de0ff3cd83 Bug 810470. Part 6: Rename nsDisplayBackground to nsDisplayBackgroundImage. r=mattwoodrow
--HG--
extra : rebase_source : c532ae41706db6c9d5488bc2b7901c3bf0f0fc25
2012-11-09 18:14:59 -05:00
Ehsan Akhgari
27d839024f Bug 810355 - Convert nsDidReflowStatus into an enum class; r=dholbert 2012-11-13 22:47:33 -08:00
Mats Palmgren
78355598f6 Bug 685012 - Implement page-break-inside:avoid in layout. r=fantasai,sr=roc 2012-11-08 17:09:38 +01:00
Jacek Szpot
bea8356b2c Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Abhishek Potnis
8ad6e4b4f3 Bug 795511: Removed usages of PR_BIT and PR_BITMASK from the tree; r=ehsan 2012-10-20 07:31:43 +05:30
Trevor Saunders
31db47e358 bug 542039 - accessible object types r=surkov, roc 2012-09-28 17:53:44 -04:00
Nathan Froyd
5375444878 Bug 796129 - remove prtypes #includes in layout/ 2012-10-01 17:12:57 -04:00
Kyle Huey
1ccfbe810b Bug 760331: Coalesce data for inline style across nodes. r=bz
This patch enables sharing of an nsAttrValue's MiscContainer between nodes for style rules.  MiscContainers of type eCSSStyleRule are now refcounted (with some clever struct packing to ensure that the amount of memory allocated for MiscContainer remains unchanged on 32 and 64 bit).  This infrastructure can be used to share most MiscContainer types in the future if we find advantages to sharing other types than just eCSSStyleRuley.  A cache mapping strings to MiscContainers has been added to nsHTMLCSSStyleSheet.  MiscContainers can be shared between nsAttrValues when one nsAttrValue is SetTo another nsAttrValue or when there is a cache hit in this cache.  This patch also adds the ability to tell a style rule that it belongs to an nsHTMLCSSStyleSheet, with appropriate accessor functions to separate that from the existing case of belonging to an nsCSSStyleSheet.

The primary use case is to reduce memory use for pages that have lots of inline style attributes with the same value.  This can happen easily with large pages that are automatically generated.  An (admittedly pathological) testcase in Bug 686975 sees over 250 MB of memory savings with this change.  Reusing the same MiscContainer for multiple nodes saves the overhead of maintaining separate copies of the string containing the serialized value of the style attribute and of creating separate style rules for each node.  Eliminating duplicate style rules enables further savings in layout through style context sharing.  The testcase sees the amount of memory used by style contexts go from over 250 MB to 10 KB.

Because the cache is based on the text value of the style attribute, it will not handle attributes that have different text values but are parsed into identical style rules.  We also do not attempt to share MiscContainers when the node's base URI differs from the document URI.  The effect of these limitations is expected to be low.
2012-09-30 09:40:24 -07:00
Matt Woodrow
de918ca279 Bug 539356 - Make the table code use rect invalidation to avoid over invalidation. r=roc 2012-08-29 17:48:45 +12:00
Robert O'Callahan
8243f6c21c Bug 770058. InvalidateFrame doesn't need flags, we can just avoid calling ScheduleRepaint if we find any ancestor frame with a descendant that needs invalidation. r=mattwoodrow 2012-08-29 17:48:44 +12:00
Matt Woodrow
1d675c61d6 Bug 539356 - Part 9c - Remove old invalidation code. r=bz 2012-08-29 17:39:31 +12:00
Ed Morley
5a3b322459 Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE 2012-09-27 16:34:46 +01:00
Matt Woodrow
9a9168f55a Bug 539356 - Make the table code use rect invalidation to avoid over invalidation. r=roc 2012-08-29 17:48:45 +12:00
Robert O'Callahan
685876852c Bug 770058. InvalidateFrame doesn't need flags, we can just avoid calling ScheduleRepaint if we find any ancestor frame with a descendant that needs invalidation. r=mattwoodrow 2012-08-29 17:48:44 +12:00
Matt Woodrow
49d4c24594 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00
Arnaud Sourioux
b20a9a4654 Bug 733186: Annotate ~1000 methods with MOZ_OVERRIDE in /layout r=dholbert r=dbaron 2012-09-14 09:10:08 -07:00
Chris Lord
bb16d413e7 Bug 786502 - Separate background layers into separate items. r=roc
Separate out background layers into separate display-list items, so that
backgrounds that are a mix of fixed and non-fixed layers will be treated
individually.
2012-09-13 11:34:23 +01:00
Ehsan Akhgari
59fbcc9b3c Bug 788014 - Part 2: Reduce the inclusion of prtypes.h in the tree to help using stdint types; r=jrmuizel
--HG--
extra : rebase_source : 66b3b6b9858fb032bebcc070347f781bdf61770c
2012-09-06 17:54:59 -04:00
L. David Baron
a173cba76b Change some uses of nsChangeHint_ReflowFrame to check nsChangeHint_NeedReflow. (Bug 789592, patch 1) r=bzbarsky 2012-09-07 15:57:06 -07:00
L. David Baron
ac347fa732 Distribute the width of column-spanning cells to columns with nothing in them, like we do for final table widths. (Bug 734569) r=dholbert 2012-09-07 15:57:06 -07:00
Ehsan Akhgari
8c296bbcd4 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Kyle Huey
433d46efea Merge m-c to b-s. 2012-08-15 06:25:20 -07:00
Kyle Huey
57cf676096 Bug 697230: Part 0 - Make table frame classes call into their superclass in DidSetStyleContext. r=bz 2012-08-13 14:13:34 -07:00
Aryeh Gregor
982100775b Bug 780618 - Move all error codes to nsError.h; r=ehsan 2012-07-27 17:03:27 +03:00
Ms2ger
331accfcb4 Bug 780387 - Part b: Stop using PRIntn; r=bsmedberg 2012-08-09 09:09:40 +02:00
David Zbarsky
fe804d085c [Bug 780428] Don't include nsIFrame.h in places where it's not necessary r=roc 2012-08-05 23:00:56 -04:00
Tal Aloni
ecb7db2109 Bug 778413 - Fix table cell automatic width calculation when using box-sizing:border-box. r=dbaron 2012-08-03 09:05:01 +02:00
Mike Hommey
c1b35e7b2a Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 20:26:44 +02:00
Ed Morley
4eb11bee72 Revert inbound to 3d5d1daa2505 to stop OS X M5 failures (backout not clean/could have been a bad merge) on a CLOSED TREE 2012-08-04 18:05:15 +01:00
Tal Aloni
b2432a503e Bug 778413 - Fix table cell automatic width calculation when using box-sizing:border-box. r=dbaron 2012-08-03 09:05:01 +02:00
Cameron McCormack
b71d455883 Bug 655877 - Part 14: Ignore float in SVG text frames. r=roc 2012-08-02 21:38:49 +10:00
Aryeh Gregor
f956593743 Bug 777292 - Return -1 from nsTableRowGroupFrame::FindLineContaining on null param; r=roc 2012-07-27 17:03:25 +03:00
Aryeh Gregor
57c0ad57fb Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Rafael Ávila de Espíndola
946681c518 Bug 774040 - remove unused field. r=roc. 2012-07-15 00:20:24 -04:00
Tal Aloni
ccbab52b14 Bug 338554 - Honor -moz-box-sizing on table cells in standards mode (we ignore it in quirks mode). r=dbaron 2012-07-12 19:28:52 -04:00
Nathan Froyd
5b30baa4c3 Bug 370750 - consolidate mochitest files installation; r=glandium
With assistance on the patch from Ms2ger, Waldo, and Mossop.
2012-07-03 16:49:02 -04:00
Ehsan Akhgari
6ef72aef93 Backout changeset f568fc280fb0 (bug 539356) because of performance and correctness regressions 2012-07-03 20:24:55 -04:00
Ehsan Akhgari
91446bec6e Backout changeset 071d6332729b (bug 770058 part 1) because DLBI is being backed out 2012-07-03 19:38:00 -04:00
Robert O'Callahan
dfaac8e211 Bug 770058. InvalidateFrame doesn't need flags, we can just avoid calling ScheduleRepaint if we find any ancestor frame with a descendant that needs invalidation. r=mattwoodrow 2012-07-03 14:24:14 +12:00
Tal Aloni
5b3fc87350 Bug 248239 - Change standards mode height calculations for table cells to use content-box sizing rather than border-box sizing by default (and to honor -moz-box-sizing, which we do not do in quirks mode). Also remove -moz-box-sizing: border-box from default style for caption element (all modes). r=dbaron 2012-06-30 12:01:31 -04:00
Matt Woodrow
1f0dbc7c74 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-06-30 15:06:11 +12:00
L. David Baron
ab299d1ae2 Backout changeset 1e2b9cdc486b (Bug 248239) due to failure of tests/MochiKit-1.4.2/tests/test_MochiKit-Style.html . 2012-06-26 18:16:09 -07:00
Tal Aloni
84078db9be Change standards mode height calculations for table cells to use content-box sizing rather than border-box sizing by default (and to honor -moz-box-sizing, which we do not do in quirks mode). Also remove -moz-box-sizing: border-box from default style for caption element (all modes). (Bug 248239) r=dbaron 2012-06-26 16:24:23 -07:00
Jonathan Watt
9ac7bb2267 Bug 767388 - Kill NS_DEBUG. r=bz.
--HG--
extra : rebase_source : d045208a26345712dbb4628c973c616cd9504f28
2012-06-25 20:59:42 +01:00
Mats Palmgren
0941034370 Bug 759249. r=bz 2012-06-01 21:56:33 +02:00
Mats Palmgren
5331043272 Bug 759249. r=bz 2012-06-01 21:56:33 +02:00
L. David Baron
f5573cbd2e Rename nsStyleBorder::GetActualBorderWidth to GetComputedBorderWidth. (Bug 713643, patch 4) r=bzbarsky 2012-05-30 22:19:49 -07:00
L. David Baron
9e7a3546cf Remove nsStyleBorder::GetActualBorder, since it now does the same thing as nsStyleBorder::GetComputedBorder. (Bug 713643, patch 3) r=bzbarsky 2012-05-30 22:19:49 -07:00
Trevor Saunders
1192ef8bd9 bug 759033 - nsAccessible -> Accessible and nsAccessibleWrap -> AccessibleWrap r=surkov
--HG--
rename : accessible/src/atk/nsAccessibleWrap.cpp => accessible/src/atk/AccessibleWrap.cpp
rename : accessible/src/atk/nsAccessibleWrap.h => accessible/src/atk/AccessibleWrap.h
rename : accessible/src/base/nsAccessible.cpp => accessible/src/generic/Accessible.cpp
rename : accessible/src/base/nsAccessible.h => accessible/src/generic/Accessible.h
rename : accessible/src/mac/nsAccessibleWrap.h => accessible/src/mac/AccessibleWrap.h
rename : accessible/src/mac/nsAccessibleWrap.mm => accessible/src/mac/AccessibleWrap.mm
rename : accessible/src/msaa/nsAccessibleWrap.cpp => accessible/src/msaa/AccessibleWrap.cpp
rename : accessible/src/msaa/nsAccessibleWrap.h => accessible/src/msaa/AccessibleWrap.h
rename : accessible/src/other/nsAccessibleWrap.cpp => accessible/src/other/AccessibleWrap.cpp
rename : accessible/src/other/nsAccessibleWrap.h => accessible/src/other/AccessibleWrap.h
2012-05-28 21:18:45 -04:00
Ed Morley
f0346ff780 Merge mozilla-central to mozilla-inbound 2012-05-21 13:19:38 +01:00
Gervase Markham
87620f5676 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
L. David Baron
11f5c76522 Replace AutoMaybeNullInflationContainer with AutoMaybeDisableInflationForShrinkWrap since the concept of the pres context's current inflation container will be going away. (Bug 747720, patch 2) r=roc 2012-05-20 22:18:27 -07:00
Benjamin Smedberg
2187798a40 Bug 734847 part 2 - treewide changes resulting from the default-infallibility of hashtables; either remove useless result checks, or use the fallible version of APIs, depending on context, r=jlebar
--HG--
extra : rebase_source : 844b008c5167e6ca39a7ba9eeec8b30672938704
2012-05-18 13:30:49 -04:00