HMG 3.0.36 (Test)

HMG announcements; Latest HMG-related news, releases, fixes and updates.

Moderator: Rathinagiri

Post Reply
User avatar
Roberto Lopez
HMG Founder
Posts: 3985
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Re: HMG 3.0.36 (Test)

Post by Roberto Lopez » Thu Jun 16, 2011 4:17 pm

flavio.veloso wrote:Sr. Roberto Lopez.

Eu posso ter uma versão da HMG.4, sendo compilada como xharbour + Mingw:

Assim como:

Eu posso ter uma versão da HMG.3.0.36, sendo compilada como xharbour + Mingw:

Ou o projeto usa como padrão o harbour-project e nunca teremos uma versão usando o xharbour.org.

Caso eu possa criar as lib´s das HMG usando o xharbour poderia mim passar como fazer, tipo um make.bat para eu poder criar as lib´s mas usando o mingw + xharbour_1.2.1.

Atenciosamente,

Flávio Veloso.
I'm not an xHarbour user, so I can't help you with that.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Roberto Lopez
HMG Founder
Posts: 3985
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Thu Jun 16, 2011 4:20 pm

Ricci wrote:
Roberto Lopez wrote: So, at the moment, I've patched my current 3.0.35 with the Grigory's path for multiselect grid and your .36 code for memory leaks.
Roberto, in 3.0.36 are still a lot of memory leaks that causes too much GDI handles. I´m trying to find them.

Ricci
Ok.

No problem.

We already have (for a new maintenance release) the Grigory fix for multiselect grid and my (pending) changes to IDE.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Roberto Lopez
HMG Founder
Posts: 3985
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Thu Jun 16, 2011 4:23 pm

Ricci wrote:I found it but that looks really bad: the fixes Grigory and me made in .35 are not working in .36 anymore.
Especially the IMAGELIST_DESTROY() in h_controlmisc.prg seems to have no effect at all.

Better going back to .35 ?
Maybe that some of the Harbour internal changes (the same that affected multiselect grid) be affecting C level functions dedicated to release handles.

Please, take a look at that.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

Ricci
Posts: 255
Joined: Thu Nov 19, 2009 2:23 pm

Post by Ricci » Thu Jun 16, 2011 4:41 pm

I found my old test program for one memory leak:

Code: Select all

#include "minigui.ch"

Function Main

DEFINE WINDOW Form_1 ;
      AT 0,0 ;
      WIDTH 200 HEIGHT 100 ;
      MAIN 

      @ 10,20 TEXTBOX TextBoxName ;
                VALUE "" ;
                WIDTH 100 HEIGHT 20 ;
                FONT "ARIAL" SIZE 09

      @ 40,60 BUTTON ButtonNew ;
                PICTURE "document-edit.bmp" ;
                ACTION ButtonClick() ;
                WIDTH 30 HEIGHT 30 FLAT    
   END WINDOW
   
   ACTIVATE WINDOW Form_1

Return Nil

// -------------------------------------------------------------------------------------------------------------------------------

Function ButtonClick()
local xx

for xx := 1 to 1000
    Form_1.ButtonNew.picture := "document-edit-gray.bmp"

    Form_1.ButtonNew.picture := "document-edit.bmp"
next
   
Return Nil
When clicking on the button "ButtonNew" the program does nothing more than changing the picture property of the button 2000 times.
With .35 you loose no GDI handle, with .36 you loose 8000. The same situation before fixing the leak in .35.

User avatar
Roberto Lopez
HMG Founder
Posts: 3985
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Thu Jun 16, 2011 4:54 pm

Ricci wrote: When clicking on the button "ButtonNew" the program does nothing more than changing the picture property of the button 2000 times.
With .35 you loose no GDI handle, with .36 you loose 8000. The same situation before fixing the leak in .35.
This appears to confirm my theory.

Some change in Harbour has made that C some level functions in charge of release handles stop working...

Perhaps, Grigory has the right answer...
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
danielmaximiliano
Posts: 2200
Joined: Fri Apr 09, 2010 4:53 pm
Location: Argentina
Has thanked: 218 times
Been thanked: 35 times
Contact:

Post by danielmaximiliano » Thu Jun 16, 2011 7:43 pm

Hola Roberto :
El IDE actualmente tiene tendencia a Incluir .FMG que no estan en el Proyecto pero si en la carpeta donde reside el mismo. [img]Vencimientos%20Form.jpg[/img]
otro caso que me suele suceder. en esa misma carpeta tengo otro proyecto, el mismo tiene errores de algun tipo. al intentar compilar el primer proyecto el mismo muestra el BUILD LOG en blanco al mirar dentro
de error.log o build.log me encuentro esto.

Code: Select all

hbmk2: Processing configuration: C:\hmg.3.0.35\harbour\bin\hbmk.cfg
hbmk2: Processing: Cartera.hbc
hbmk2: Processing: VENCIMIENTOS.hbc
hbmk2: Linking... VENCIMIENTOS.exe
c:/hmg.3.0.35/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../mingw32/bin/ld.exe: cannot find -lhbxml
collect2: ld returned 1 exit status
hbmk2: Error: Running linker. 1
gcc.exe .hbmk\win\mingw\main.o .hbmk\win\mingw\_hbmkaut.o _temp.o    -mwindows -Wl,--start-group -lhbxml -lhmg -lhbmysql -lmysql -lcrypt -ledit -leditex -lgraph -lini -lreport -lhbwin -lhbziparc -lhbmzip -lmsvfw32 -lvfw32 -lsddodbc -lrddsql -lsddmy -lhbodbc -lodbc32 -lhbhpdf -lhbvpdf -lhbmemio -lhbsqlit3 -lsqlite3 -lhbfimage -lhbpgsql -lpq -lhbtip -lhbct -lhbmisc -lhbnetio -lxhb -lhbextern -lhbdebug -lhbvm -lhbrtl -lhblang -lhbcpage -lgtcgi -lgtpca -lgtstd -lgtwin -lgtwvt -lgtgui -lhbrdd -lhbuddall -lhbusrrdd -lrddntx -lrddcdx -lrddnsx -lrddfpt -lhbrdd -lhbhsx -lhbsix -lhbmacro -lhbcplr -lhbpp -lhbcommon -lkernel32 -luser32 -lgdi32 -ladvapi32 -lws2_32 -lwinspool -lcomctl32 -lcomdlg32 -lshell32 -luuid -lole32 -loleaut32 -lmpr -lwinmm -lmapi32 -limm32 -lmsimg32 -lwininet -lhbpcre -lhbzlib  -Wl,--end-group -oVENCIMIENTOS.exe -LC:/hmg.3.0.35/harbour/lib -Lc:/hmg/lib -LC:/hmg.3.0.35//lib -LC:/Vencimientos/
la aplicacion no se compila ya que HBMK2 procesa tambien cartera.hbc y cartera.hbp que tiene un error(en este caso una libreria que no se encuentra)

subo una imagen de los 2 examinadores de proyecto
Attachments
Vencimientos Forms.jpg
Vencimientos Forms.jpg (18.68 KiB) Viewed 3511 times
vencimientos.jpg
vencimientos.jpg (22.83 KiB) Viewed 3516 times
Cartera.jpg
Cartera.jpg (27.83 KiB) Viewed 3516 times
Last edited by danielmaximiliano on Thu Jun 16, 2011 8:04 pm, edited 2 times in total.
*´¨)
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´. (¸.·` *
.·`.HMG : It's magic !
(¸.·``··*

Saludos / Regards
DaNiElMaXiMiLiAnO

Whatsapp. : +54901169026142
Telegram Name : DaNiElMaXiMiLiAnO

User avatar
Roberto Lopez
HMG Founder
Posts: 3985
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Thu Jun 16, 2011 7:55 pm

danielmaximiliano wrote:Hola Roberto :
El IDE actualmente tiene tendencia a Incluir .FMG que no estan en el Proyecto pero si en la
<...>
Voy a modificar el IDE para que simplemente invoque 'buildapp.bat' usando como parámetros los archivos .hbp y hbc del proyecto.

De ahora en adelante, todo será responsabilidad de hbmk2.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
danielmaximiliano
Posts: 2200
Joined: Fri Apr 09, 2010 4:53 pm
Location: Argentina
Has thanked: 218 times
Been thanked: 35 times
Contact:

Post by danielmaximiliano » Thu Jun 16, 2011 8:00 pm

Gracias Roberto :
pruebo de manera separada algunos modulos del proyecto y despues incluirlos en el mismo
suele ser tedioso tener muchas carpetas para un mismo proyecto por esa razon.
*´¨)
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´. (¸.·` *
.·`.HMG : It's magic !
(¸.·``··*

Saludos / Regards
DaNiElMaXiMiLiAnO

Whatsapp. : +54901169026142
Telegram Name : DaNiElMaXiMiLiAnO

User avatar
Roberto Lopez
HMG Founder
Posts: 3985
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Fri Jun 17, 2011 3:26 am

rathinagiri wrote:
Roberto Lopez wrote:
rathinagiri wrote: <...>
But it has some specific problems. I will list them tomorrow.
Forget about it.

I've decided to modify IDE to support the new simplified build batch file.

I'll send the required parameters to hbmk2 directly via the new batch.
That's great Roberto!
<...>
Ok.

I've modified IDE to make the following call:

<hmgpath>\buildapp.bat <project.hbp> <project.hbc>

That does not work.

Problem 1: IDE must create the hbmk.hbm

I've instructed IDE to do so.

Problem 2: .fmg files are not found in the current (project) folder.

I've solved modifiying buildapp.bat.

A parameter must be added to hbmk2: "-i."

That instruct hbmk2 to locate includes (fmg files) in the current (.) folder.

The problem 3 is a question (since I'm not sure about that).

hbmk.hbm points hbmk2 to pick the hmg.hbc file at hmg root.

What happens to <project.hbc> file in the project folder.

Does it be processed?

TIA.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Rathinagiri
Posts: 5268
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Has thanked: 171 times
Been thanked: 175 times
Contact:

Post by Rathinagiri » Fri Jun 17, 2011 4:45 am

Hi Roberto,

Sorry to intrude.

Have you tried to use the modified build.bat?

Buildapp.bat is old one and the latest build.bat is working fine except the problems I have mentioned.
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.

Post Reply