From b448313850d4e0cc11569d18f31cbfff982c38e1 Mon Sep 17 00:00:00 2001 From: Martin Lensment Date: Thu, 24 Sep 2015 11:55:18 +0300 Subject: [PATCH] Fix empty hash issue #2962 --- app/controllers/admin/reserved_domains_controller.rb | 4 +++- app/models/reserved_domain.rb | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/controllers/admin/reserved_domains_controller.rb b/app/controllers/admin/reserved_domains_controller.rb index 594638ce7..430fb9d8a 100644 --- a/app/controllers/admin/reserved_domains_controller.rb +++ b/app/controllers/admin/reserved_domains_controller.rb @@ -3,13 +3,15 @@ class Admin::ReservedDomainsController < AdminController def index rd = ReservedDomain.first_or_initialize - @reserved_domains = rd.names.to_yaml.gsub("---\n", '') + rd.names = nil if rd.names.blank? + @reserved_domains = rd.names.to_yaml.gsub(/---.?\n/, '').gsub(/\.\.\..?\n/, '') end def create @reserved_domains = params[:reserved_domains] begin + params[:reserved_domains] = "---\n" if params[:reserved_domains].blank? names = YAML.load(params[:reserved_domains]) fail if names == false rescue diff --git a/app/models/reserved_domain.rb b/app/models/reserved_domain.rb index f9bd78b79..6684d6541 100644 --- a/app/models/reserved_domain.rb +++ b/app/models/reserved_domain.rb @@ -3,6 +3,7 @@ class ReservedDomain < ActiveRecord::Base before_save :fill_empty_passwords def fill_empty_passwords + return unless names names.each { |k, v| names[k] = SecureRandom.hex if v.blank? } end