diff options
| author | Joshua Peek <josh@joshpeek.com> | 2012-09-24 10:51:39 -0500 |
|---|---|---|
| committer | Joshua Peek <josh@joshpeek.com> | 2012-09-24 10:51:39 -0500 |
| commit | 31e33f99f2453bfcfb4b93c10286b3e876a84987 (patch) | |
| tree | 5e144da31f750d6f3cd480872354cdbcc26864c6 /lib | |
| parent | 7c51b9058697b0a7f6779ffde4307f978aa4cfac (diff) | |
Ensure lang is skipped on any binary file
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/linguist/blob_helper.rb | 2 | ||||
| -rw-r--r-- | lib/linguist/language.rb | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/lib/linguist/blob_helper.rb b/lib/linguist/blob_helper.rb index b0a2062..d7f56de 100644 --- a/lib/linguist/blob_helper.rb +++ b/lib/linguist/blob_helper.rb @@ -302,7 +302,7 @@ module Linguist if defined?(@data) && @data.is_a?(String) data = @data else - data = lambda { binary_mime_type? ? "" : self.data } + data = lambda { (binary_mime_type? || binary?) ? "" : self.data } end @language = Language.detect(name.to_s, data, mode) diff --git a/lib/linguist/language.rb b/lib/linguist/language.rb index fb24204..a6b199c 100644 --- a/lib/linguist/language.rb +++ b/lib/linguist/language.rb @@ -84,7 +84,9 @@ module Linguist if possible_languages.length > 1 data = data.call() if data.respond_to?(:call) - if result = Classifier.classify(Samples::DATA, data, possible_languages.map(&:name)).first + if data.nil? || data == "" + nil + elsif result = Classifier.classify(Samples::DATA, data, possible_languages.map(&:name)).first Language[result[0]] end else |
