aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorMarkus Reiter2017-09-23 01:40:14 +0200
committerMarkus Reiter2017-09-29 11:47:21 +0200
commita750644b9218267116af07c4832f7a5cccad415d (patch)
treeb90bfc97ea18225c4acaca7e1a8950d1670e4353 /Library
parent06b9ab558606cc186f5450c451cf77a196a3ffcc (diff)
downloadbrew-a750644b9218267116af07c4832f7a5cccad415d.tar.bz2
Fail if no default language is specified.
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/cask/lib/hbc/dsl.rb10
1 files changed, 8 insertions, 2 deletions
diff --git a/Library/Homebrew/cask/lib/hbc/dsl.rb b/Library/Homebrew/cask/lib/hbc/dsl.rb
index 3824b9761..1d048bffd 100644
--- a/Library/Homebrew/cask/lib/hbc/dsl.rb
+++ b/Library/Homebrew/cask/lib/hbc/dsl.rb
@@ -105,7 +105,9 @@ module Hbc
end
def language(*args, default: false, &block)
- if !args.empty? && block_given?
+ if args.empty?
+ language_eval
+ elsif block_given?
@language_blocks ||= {}
@language_blocks[args] = block
@@ -117,7 +119,7 @@ module Hbc
@language_blocks.default = block
else
- language_eval
+ raise CaskInvalidError.new(cask, "No block given to language stanza.")
end
end
@@ -126,6 +128,10 @@ module Hbc
return @language = nil if @language_blocks.nil? || @language_blocks.empty?
+ if @language_blocks.default.nil?
+ raise CaskInvalidError.new(cask, "No default language specified.")
+ end
+
MacOS.languages.map(&Locale.method(:parse)).each do |locale|
key = @language_blocks.keys.detect do |strings|
strings.any? { |string| locale.include?(string) }