From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: [Emacs-diffs] ImageMagick Support on Windows Date: Wed, 15 Oct 2014 13:35:23 +0300 Message-ID: <83d29t62ok.fsf@gnu.org> References: <83siis71xq.fsf@gnu.org> <83siiq6e3v.fsf@gnu.org> <83r3ya65t0.fsf@gnu.org> <83h9z56fwy.fsf@gnu.org> <868ukhn04p.fsf@gmail.com> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1413369360 20103 80.91.229.3 (15 Oct 2014 10:36:00 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 15 Oct 2014 10:36:00 +0000 (UTC) Cc: haroogan@gmail.com, emacs-devel@gnu.org To: rzl24ozi@gmail.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Oct 15 12:35:52 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XeLvs-0000dz-Eb for ged-emacs-devel@m.gmane.org; Wed, 15 Oct 2014 12:35:52 +0200 Original-Received: from localhost ([::1]:43810 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XeLvs-0003eY-1L for ged-emacs-devel@m.gmane.org; Wed, 15 Oct 2014 06:35:52 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:53899) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XeLvY-0003SI-Fq for emacs-devel@gnu.org; Wed, 15 Oct 2014 06:35:38 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XeLvS-0007M1-Bv for emacs-devel@gnu.org; Wed, 15 Oct 2014 06:35:32 -0400 Original-Received: from mtaout26.012.net.il ([80.179.55.182]:43766) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XeLvR-0007Je-OW for emacs-devel@gnu.org; Wed, 15 Oct 2014 06:35:26 -0400 Original-Received: from conversion-daemon.mtaout26.012.net.il by mtaout26.012.net.il (HyperSendmail v2007.08) id <0NDH00B00ENEXT00@mtaout26.012.net.il> for emacs-devel@gnu.org; Wed, 15 Oct 2014 13:33:41 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by mtaout26.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NDH001KVEO4N090@mtaout26.012.net.il>; Wed, 15 Oct 2014 13:33:41 +0300 (IDT) In-reply-to: <868ukhn04p.fsf@gmail.com> X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 80.179.55.182 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:175397 Archived-At: > From: rzl24ozi@gmail.com > Cc: emacs-devel@gnu.org > Date: Wed, 15 Oct 2014 18:38:30 +0900 > > In my case, crashed at imagemagick-types in image.c. > imagemagick-register-types is called in image.el and finally > imagemagick-types in image.c is called, but at this time, imagemagick > functions are not initialized yet. then temacs crash. > > I add init_imagemagick_functons to imagemagick-types. I think that's the right fix, thanks. > And, for imagemagick-register-types to work well, there was a need to > load image.el after w32-win.el in loadup.el because > dynamic-library-alist is set in w32-win.el. That's probably correct as well. > Yes, libMagickWand-XXX.dll depend on libMagickCore-XXX.dll and > libMagickCore-XXX.dll is automatically loaded when load > libMagickWand-XXX.dll. > But some functions used in image.c is in libMagickCore-XXX.dll. > To get these functions by GetProcAddress, need to load > libMagickCore-XXX.dll separately. > > Although is not a smart way, I add two DLLs as below > to dynamic-library-alist and load each library separately. > (My imagemagick is built without --enable-hdri.) > > '(magickwand "libMagickWand-6.Q16-2.dll") > '(magickcore "libMagickCore-6.Q16-2.dll") Yuck! I think it's much better to teach w32-win.el and w32_delayed_load to load more than one library for a certain image type.