| Index: third_party/WebKit/Source/core/layout/ng/ng_block_node.cc
|
| diff --git a/third_party/WebKit/Source/core/layout/ng/ng_block_node.cc b/third_party/WebKit/Source/core/layout/ng/ng_block_node.cc
|
| index 7e8127a48780df6ce49966c3c011861e117d73f2..a2b54b6b28cd867595a0857ad05ec53cd824c10b 100644
|
| --- a/third_party/WebKit/Source/core/layout/ng/ng_block_node.cc
|
| +++ b/third_party/WebKit/Source/core/layout/ng/ng_block_node.cc
|
| @@ -281,10 +281,27 @@ void NGBlockNode::CopyFragmentDataToLayoutBox(
|
| RefPtr<NGPhysicalBoxFragment> NGBlockNode::RunOldLayout(
|
| const NGConstraintSpace& constraint_space) {
|
| NGLogicalSize available_size = constraint_space.PercentageResolutionSize();
|
| - layout_box_->setOverrideContainingBlockContentLogicalWidth(
|
| - available_size.inline_size);
|
| - layout_box_->setOverrideContainingBlockContentLogicalHeight(
|
| - available_size.block_size);
|
| + LayoutObject* containing_block = layout_box_->containingBlock();
|
| + bool parallel_writing_mode;
|
| + if (!containing_block) {
|
| + parallel_writing_mode = true;
|
| + } else {
|
| + parallel_writing_mode = IsParallelWritingMode(
|
| + FromPlatformWritingMode(containing_block->styleRef().getWritingMode()),
|
| + FromPlatformWritingMode(Style().getWritingMode()));
|
| + }
|
| + if (parallel_writing_mode) {
|
| + layout_box_->setOverrideContainingBlockContentLogicalWidth(
|
| + available_size.inline_size);
|
| + layout_box_->setOverrideContainingBlockContentLogicalHeight(
|
| + available_size.block_size);
|
| + } else {
|
| + // OverrideContainingBlock should be in containing block writing mode.
|
| + layout_box_->setOverrideContainingBlockContentLogicalWidth(
|
| + available_size.block_size);
|
| + layout_box_->setOverrideContainingBlockContentLogicalHeight(
|
| + available_size.inline_size);
|
| + }
|
| // TODO(layout-ng): Does this handle scrollbars correctly?
|
| if (constraint_space.IsFixedSizeInline()) {
|
| layout_box_->setOverrideLogicalContentWidth(
|
|
|