fix: crash on custom printing margins (#22164)

This commit is contained in:
Shelley Vohr 2020-02-13 17:15:25 +00:00 committed by GitHub
parent f97ce86d08
commit 6ed396df17
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 6 deletions

View file

@ -1807,18 +1807,21 @@ void WebContents::Print(gin_helper::Arguments* args) {
settings.SetIntKey(printing::kSettingMarginsType, margin_type);
if (margin_type == printing::CUSTOM_MARGINS) {
base::Value custom_margins(base::Value::Type::DICTIONARY);
int top = 0;
margins.Get("top", &top);
settings.SetIntKey(printing::kSettingMarginTop, top);
custom_margins.SetIntKey(printing::kSettingMarginTop, top);
int bottom = 0;
margins.Get("bottom", &bottom);
settings.SetIntKey(printing::kSettingMarginBottom, bottom);
custom_margins.SetIntKey(printing::kSettingMarginBottom, bottom);
int left = 0;
margins.Get("left", &left);
settings.SetIntKey(printing::kSettingMarginLeft, left);
custom_margins.SetIntKey(printing::kSettingMarginLeft, left);
int right = 0;
margins.Get("right", &right);
settings.SetIntKey(printing::kSettingMarginRight, right);
custom_margins.SetIntKey(printing::kSettingMarginRight, right);
settings.SetPath(printing::kSettingMarginsCustom,
std::move(custom_margins));
}
} else {
settings.SetIntKey(printing::kSettingMarginsType,