Skip to content

Commit 0b65f68

Browse files
committed
fix: resolve ZeroDivisionError when calculating display aspect ratio
1 parent a0556af commit 0b65f68

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

lib/ffmpeg/stream.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -188,12 +188,12 @@ def resolution
188188
#
189189
# @return [Rational, nil]
190190
def display_aspect_ratio
191-
return @display_aspect_ratio unless @display_aspect_ratio.nil?
191+
return @display_aspect_ratio if defined?(@display_aspect_ratio)
192192

193193
@display_aspect_ratio = calculate_aspect_ratio(@raw_display_aspect_ratio)
194-
@display_aspect_ratio ||= Rational(width, height) if width && height
194+
return unless width && height && !height.zero?
195195

196-
@display_aspect_ratio
196+
@display_aspect_ratio ||= Rational(width, height)
197197
end
198198

199199
# The calculated pixel aspect ratio of the stream.
@@ -203,7 +203,7 @@ def display_aspect_ratio
203203
#
204204
# @return [Rational]
205205
def sample_aspect_ratio
206-
return @sample_aspect_ratio unless @sample_aspect_ratio.nil?
206+
return @sample_aspect_ratio if defined?(@sample_aspect_ratio)
207207

208208
@sample_aspect_ratio = calculate_aspect_ratio(@raw_sample_aspect_ratio)
209209
@sample_aspect_ratio ||= Rational(1)

0 commit comments

Comments
 (0)