Skip to content

Instantly share code, notes, and snippets.

@lolmaus
Last active December 18, 2015 12:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lolmaus/5780439 to your computer and use it in GitHub Desktop.
Save lolmaus/5780439 to your computer and use it in GitHub Desktop.
begin
timeout_seconds = 10
if sass_flavor == 'sass'
template = Tilt::SassTemplate.new('SASS code', {style: css_flavor, cache: false}) { sass_code }
else
template = Tilt::ScssTemplate.new('SCSS code', {style: css_flavor, cache: false}) { sass_code }
end
output = Timeout::timeout(timeout_seconds) { template.render }
if !Sass.logger.messages.empty? then output.prepend Sass.logger.messages << "\n\n" end
output
rescue Sass::SyntaxError => e
status 200
e.to_s.lines.first
rescue Timeout::Error
status 200
"/* SASS compilation time exceeded #{timeout_seconds} seconds and was terminated." +
"\n *" +
"\n * Please make your SASS logic less complicated. */"
end if sass_code
if sass_code
begin
timeout_seconds = 10
if sass_flavor == 'sass'
template = Tilt::SassTemplate.new('SASS code', {style: css_flavor, cache: false}) { sass_code }
else
template = Tilt::ScssTemplate.new('SCSS code', {style: css_flavor, cache: false}) { sass_code }
end
output = Timeout::timeout(timeout_seconds) { template.render }
if !Sass.logger.messages.empty? then output.prepend Sass.logger.messages << "\n\n" end
output
rescue Sass::SyntaxError => e
status 200
e.to_s.lines.first
rescue Timeout::Error
status 200
"/* SASS compilation time exceeded #{timeout_seconds} seconds and was terminated." +
"\n *" +
"\n * Please make your SASS logic less complicated. */"
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment