Announcement

Collapse
No announcement yet.

v4.27: IrfanPaint no longer keeps data(removed when paint closed)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Reported v4.27: IrfanPaint no longer keeps data(removed when paint closed)

    IrfanPaint has given me trouble in keeping the changes it has made applied to the original. In 4.25 I found that if you zoomed to "Original Size" it would keep it's data (lines text, edits, etc.) when the dialog was closed, but now in 4.27 (with the latest 4.13.67 Paint) , there is nothing I can find to keep the changes. Even saving "in process" does not keep the changes made to that point!

    Yes this is Linux under WINE, (Using an updated Ubuntu Lucid and WINE 1.1.42) but has anyone else noticed a problem with "Paint" in 4.27?
    Last edited by MItaly; 07.07.2010, 09:33 AM. Reason: IfranPaint => IrfanPaint
    Firefox 3.5.x & Thunderbird 2.0.0.x - Ubuntu 9.04 & 9.10 & Windows XP-SP3
    (1) 2.8 GHz/2Gb/ATI HD2600-512 RAM, SIS AC97 OB Audio (2) 2.9GHz /2Gb/NVIDIA GeForce 7300LE-256 RAM, Intel 82801 OB Audio

    ...Yes, he also uses IrfanView in Ubuntu linux!

    #2
    I tested Paint on wine a lot of time ago, and IIRC it worked with wine 1.1.x; since IP 4.13.67 changed almost nothing to what it was in the last two-three revisions, probably it's something that changed in IrfanView. Anyway, I'm not very surprised that it doesn't work flawlessly on wine, since some "dirty tricks" are used (because it couldn't be done otherwise, when I started to write it).
    I've got neither the time nor the abilities to debug this thing on Linux (I use Linux everyday, but I don't know how to debug an application running under wine); still, if someone wants to take care of the issue the sources of IP are publicly available, and I'll be glad to accept any patch that fixes this problem.
    IrfanPaint developer
    The latest stable IrfanPaint version is the 0.4.13.70.
    IrfanPaint is now open-source (released under BSD license).

    Comment


      #3
      Like I said, it's been working basically fine up to now. Is there any way I can assist - is there a version that outputs log files (a debug variant) I can test?

      Can you ask Irfan if he's made any changes to the paint interface routine for 4.27 that may offer a clue?

      Let me know if you can - I'll post a note on the Ubuntu and Wine boards - also noting there that IrfanPaint is going FOSS.
      Last edited by emarkay; 03.07.2010, 12:12 AM. Reason: typo
      Firefox 3.5.x & Thunderbird 2.0.0.x - Ubuntu 9.04 & 9.10 & Windows XP-SP3
      (1) 2.8 GHz/2Gb/ATI HD2600-512 RAM, SIS AC97 OB Audio (2) 2.9GHz /2Gb/NVIDIA GeForce 7300LE-256 RAM, Intel 82801 OB Audio

      ...Yes, he also uses IrfanView in Ubuntu linux!

      Comment


        #4
        Originally posted by emarkay View Post
        Like I said, it's been working basically fine up to now. Is there any way I can assist - is there a version that outputs log files (a debug variant) I can test?
        No, the only logging available (which is disabled by default) is to benchmark some performance-critical code (floodfill code, etc).
        Still, you could try running it under wine with all wine warnings enabled (it impies setting some environment variable to WARN+ALL, IIRC), you may discover some interesting things that way.
        Can you ask Irfan if he's made any changes to the paint interface routine for 4.27 that may offer a clue?
        Yes, I may do it in the next days.
        Let me know if you can - I'll post a note on the Ubuntu and Wine boards - also noting there that IrfanPaint is going FOSS.
        You may also specify that a known hack is relying on the fact that Windows silently ignores GlobalFree of memory allocated via a memory-mapped file (CreateFileMapping+MapViewOfFile). This because IrfanPaint requires memory to be allocated that way (to create a DibSection to work on with GDI methods), while IV on its own would use Globalxxx functions to allocate the memory for the image, so it often tries to deallocate memory allocated by IP with GlobalFree.
        IrfanPaint developer
        The latest stable IrfanPaint version is the 0.4.13.70.
        IrfanPaint is now open-source (released under BSD license).

        Comment


          #5
          See also these appropriate threads - still no furhter info.

          IfranPaint has given me trouble in keeping the changes it has made applied to the original. In 4.25 I found that if you zoomed to "Original Size" it would keep it's data (lines text, edits, etc.) when the dialog was closed, but now in the latest version, 4.27 (with the latest 4.13.67 Paint) , there is nothing I can find to keep the changes. Even saving "in process" does not keep the changes made to that point! Using an updated Lucid and WINE 1.1.42 Any ideas? Post at WINE forums
          Firefox 3.5.x & Thunderbird 2.0.0.x - Ubuntu 9.04 & 9.10 & Windows XP-SP3
          (1) 2.8 GHz/2Gb/ATI HD2600-512 RAM, SIS AC97 OB Audio (2) 2.9GHz /2Gb/NVIDIA GeForce 7300LE-256 RAM, Intel 82801 OB Audio

          ...Yes, he also uses IrfanView in Ubuntu linux!

          Comment


            #6
            I did some testing, and I noticed that if you draw with tools that draw using GDI, it seems to work fine, but, if you close the plugin or try to use any other IV function that works on the image (Save, rotate, ...), it seems that no painting has been done. *But*, if you use a tool like floodfill (which draws directly on the DIB pixels), everything works fine, and all the changes are "fixed" in the DIB.
            My educated guess on this fact is that Wine for DibSections uses a hybrid approach: it creates a DIB a DDB (which probably is actually an X bitmap); the work performed by the GDI methods is done on the DDB/X bitmap, which is converted to DIB whenever the software tries to write on the DIB bits (I think they use some kind of page protection method to do that).
            So, when IrfanPaint just uses GDI methods to perform his work, the changes are made just on the DDB and aren't mirrored on the DIB, thus causing the problem; instead, when IP also writes directly on the DIB bits, before it does so the changes done to the DDB are automatically mirrored on the DIB, so everything works fine.

            If things are like that, a quick workaround can be created to just make a "fake write" on the DIB to force the update after each tool use. It would be quite a small change and it should solve the problem.

            Still, IMHO, to make such DIB/DDB system to work successfully they should have set the update also on DIB read, maybe creating a "dirty flag" to avoid unnecessary updates.
            IrfanPaint developer
            The latest stable IrfanPaint version is the 0.4.13.70.
            IrfanPaint is now open-source (released under BSD license).

            Comment


              #7
              Originally posted by MItaly View Post
              If things are like that, a quick workaround can be created to just make a "fake write" on the DIB to force the update after each tool use. It would be quite a small change and it should solve the problem.
              Maybe a call to GdiFlush() does the job.

              Comment


                #8
                I was going to try it... but then I saw its implementation in wine.
                IrfanPaint developer
                The latest stable IrfanPaint version is the 0.4.13.70.
                IrfanPaint is now open-source (released under BSD license).

                Comment


                  #9
                  Official WINE bug filed:


                  Also, FWIW, in IrfanView 4.27 under Linux, is your "Open" dialog box, on "Detailed" setting, no longer showing anything but the filename; no date, size type, etc?
                  Firefox 3.5.x & Thunderbird 2.0.0.x - Ubuntu 9.04 & 9.10 & Windows XP-SP3
                  (1) 2.8 GHz/2Gb/ATI HD2600-512 RAM, SIS AC97 OB Audio (2) 2.9GHz /2Gb/NVIDIA GeForce 7300LE-256 RAM, Intel 82801 OB Audio

                  ...Yes, he also uses IrfanView in Ubuntu linux!

                  Comment


                    #10
                    Any additional info on this ?
                    Firefox 3.5.x & Thunderbird 2.0.0.x - Ubuntu 9.04 & 9.10 & Windows XP-SP3
                    (1) 2.8 GHz/2Gb/ATI HD2600-512 RAM, SIS AC97 OB Audio (2) 2.9GHz /2Gb/NVIDIA GeForce 7300LE-256 RAM, Intel 82801 OB Audio

                    ...Yes, he also uses IrfanView in Ubuntu linux!

                    Comment


                      #11
                      TTT - anyone at all???
                      Firefox 3.5.x & Thunderbird 2.0.0.x - Ubuntu 9.04 & 9.10 & Windows XP-SP3
                      (1) 2.8 GHz/2Gb/ATI HD2600-512 RAM, SIS AC97 OB Audio (2) 2.9GHz /2Gb/NVIDIA GeForce 7300LE-256 RAM, Intel 82801 OB Audio

                      ...Yes, he also uses IrfanView in Ubuntu linux!

                      Comment


                        #12
                        What do you mean?
                        Have you saved the file?

                        Comment


                          #13
                          Which file? It happens to all files.

                          What has been changed in 4.27 in the paint area that may be causing this - what clues can be made that can assist the WINE people?
                          I am not a programmer, just a user..
                          Firefox 3.5.x & Thunderbird 2.0.0.x - Ubuntu 9.04 & 9.10 & Windows XP-SP3
                          (1) 2.8 GHz/2Gb/ATI HD2600-512 RAM, SIS AC97 OB Audio (2) 2.9GHz /2Gb/NVIDIA GeForce 7300LE-256 RAM, Intel 82801 OB Audio

                          ...Yes, he also uses IrfanView in Ubuntu linux!

                          Comment

                          Working...
                          X