summaryrefslogtreecommitdiff
path: root/app/services/web_hook_service.rb
diff options
context:
space:
mode:
authorAlexander Randa <randa.alex@gmail.com>2017-08-01 17:30:29 +0300
committerAlexander Randa <randa.alex@gmail.com>2017-08-01 20:19:59 +0300
commit0135d57b017e4b044511249d534bd26ab77c063d (patch)
tree48ef0c366851f0eaf56540fe2018873fe3f96ea1 /app/services/web_hook_service.rb
parent1ec24154aabc2e25fc0c9f742ea23a075a1d9ed8 (diff)
downloadgitlab-ce-0135d57b017e4b044511249d534bd26ab77c063d.tar.gz
Fix encoding error for WebHook logging
Diffstat (limited to 'app/services/web_hook_service.rb')
-rw-r--r--app/services/web_hook_service.rb8
1 files changed, 7 insertions, 1 deletions
diff --git a/app/services/web_hook_service.rb b/app/services/web_hook_service.rb
index 27c3ba197ac..2825478926a 100644
--- a/app/services/web_hook_service.rb
+++ b/app/services/web_hook_service.rb
@@ -101,7 +101,7 @@ class WebHookService
request_headers: build_headers(hook_name),
request_data: request_data,
response_headers: format_response_headers(response),
- response_body: response.body,
+ response_body: safe_response_body(response),
response_status: response.code,
internal_error_message: error_message
)
@@ -124,4 +124,10 @@ class WebHookService
def format_response_headers(response)
response.headers.each_capitalized.to_h
end
+
+ def safe_response_body(response)
+ return '' unless response.body
+
+ response.body.encode('UTF-8', invalid: :replace, undef: :replace, replace: '')
+ end
end