diff --git a/Library/Homebrew/service.rb b/Library/Homebrew/service.rb index e4f27fd73c..883f19bf6d 100644 --- a/Library/Homebrew/service.rb +++ b/Library/Homebrew/service.rb @@ -465,7 +465,7 @@ module Homebrew EOS # command needs to be first because it initializes all other values - cmd = command&.map { |arg| Utils::Shell.sh_quote(arg) } + cmd = command&.map { |arg| Utils::Service.systemd_quote(arg) } &.join(" ") options = [] diff --git a/Library/Homebrew/test/service_spec.rb b/Library/Homebrew/test/service_spec.rb index a4b7a913a9..6cb6c80f2b 100644 --- a/Library/Homebrew/test/service_spec.rb +++ b/Library/Homebrew/test/service_spec.rb @@ -727,7 +727,7 @@ RSpec.describe Homebrew::Service do [Service] Type=simple - ExecStart=#{HOMEBREW_PREFIX}/opt/#{name}/bin/beanstalkd test + ExecStart="#{HOMEBREW_PREFIX}/opt/#{name}/bin/beanstalkd" "test" Restart=always RestartSec=30 WorkingDirectory=#{HOMEBREW_PREFIX}/var @@ -760,7 +760,7 @@ RSpec.describe Homebrew::Service do [Service] Type=oneshot - ExecStart=#{HOMEBREW_PREFIX}/opt/#{name}/bin/beanstalkd + ExecStart="#{HOMEBREW_PREFIX}/opt/#{name}/bin/beanstalkd" EOS expect(unit).to eq(unit_expect.strip) end @@ -783,7 +783,7 @@ RSpec.describe Homebrew::Service do [Service] Type=simple - ExecStart=#{HOMEBREW_PREFIX}/opt/#{name}/bin/beanstalkd + ExecStart="#{HOMEBREW_PREFIX}/opt/#{name}/bin/beanstalkd" WorkingDirectory=#{Dir.home} EOS expect(unit).to eq(unit_expect.strip)