Defect #35027
Gantt PNG export ignores imagemagick_convert_command
Status: | Closed | Start date: | ||
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | % Done: | 0% | ||
Category: | Gantt | |||
Target version: | 4.1.6 | |||
Resolution: | Fixed | Affected version: | 4.1.0 |
Description
Gantt PNG export uses ImageMagick's convert command, but it ignores imagemagick_convert_command in configration.yml.
Steps to reproduce:
1. Set incorrect command name (e.g. /usr/bin/_convert
) to imagemagick_convert_command in configration.yml
2. Restart Redmine
3. Export gantt to PNG. It should not work because imagemagick_convert_command is wrong, but it works fine.
Related issues
Associated revisions
Fix gantt PNG export ignores imagemagick_convert_command (#35027).
Patch by Yuichi HARADA.
History
#1
Updated by Yuichi HARADA about 1 year ago
- File 35027.patch
added
It seems that you can set the path of Imagemagick's client command to MiniMagick.cli_path
.
https://rubydoc.info/github/minimagick/minimagick/MiniMagick/Configuration#cli_path-instance_method
I created a patch.
diff --git a/lib/redmine/helpers/gantt.rb b/lib/redmine/helpers/gantt.rb
index 122013e5a..7d078298c 100644
--- a/lib/redmine/helpers/gantt.rb
+++ b/lib/redmine/helpers/gantt.rb
@@ -395,6 +395,9 @@ module Redmine
Redmine::Configuration['minimagick_font_path'].presence ||
Redmine::Configuration['rmagick_font_path'].presence
img = MiniMagick::Image.create(".#{format}", false)
+ if Redmine::Configuration['imagemagick_convert_command'].present?
+ MiniMagick.cli_path = File.dirname(Redmine::Configuration['imagemagick_convert_command'])
+ end
MiniMagick::Tool::Convert.new do |gc|
gc.size('%dx%d' % [subject_width + g_width + 1, height])
gc.xc('white')
#2
Updated by Marius BALTEANU about 1 year ago
- Target version set to Candidate for next minor release
#3
Updated by Go MAEDA 11 months ago
- Duplicated by Defect #35424: https://www.redmine.org/boards/2/topics/65661 added
#4
Updated by Jan Catrysse 11 months ago
I tried this patch on #35424 but that did not fix the issue. Maybe something else is happening, but I'm not enough of a connoisseur :-)
#6
Updated by Marius BALTEANU 3 months ago
- Status changed from New to Resolved
- Assignee set to Marius BALTEANU
- Resolution set to Fixed
Patch committed, thanks!
The patch can fix some issues when the convert
command is not available in the global path, but the binary always must be named convert
.
imagemagick_convert_command: /usr/local/bin/convert
will generate the following:
MiniMagick.cli_path
(used for Gantt PNG) will be set to/usr/local/bin
and MiniMagick will look afterconvert
binary inside that path.- For thumbnail generation, it will be used the exact path from configuration:
/usr/local/bin/convert
.
In case of a different binary name (convert2
for example), the Gantt PNG will not work.
#7
Updated by Marius BALTEANU 3 months ago
- Status changed from Resolved to Closed
#8
Updated by Marius BALTEANU 3 months ago
- Duplicated by deleted (Defect #35424: https://www.redmine.org/boards/2/topics/65661)
#9
Updated by Marius BALTEANU 3 months ago
- Related to Defect #35424: https://www.redmine.org/boards/2/topics/65661 added