Opened 8 years ago

Closed 8 years ago

#3011 closed defect (fixed)

OSGeo4W-winGRASS71 r68376: starting wxgui fails

Reported by: hellik Owned by: grass-dev@…
Priority: critical Milestone: 7.2.0
Component: wxGUI Version: svn-trunk
Keywords: Cc:
CPU: x86-64 Platform: MSWindows 7

Description

error message:

Cleaning up temporary files...
Starting GRASS GIS...
Traceback (most recent call last):
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1200
, in <module>
    GRASSStartUp = StartUp(0)
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_core.
py", line 7981, in __init__
    self._BootstrapApp()
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_core.
py", line 7555, in _BootstrapApp
    return _core_.PyApp__BootstrapApp(*args, **kwargs)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1175
, in OnInit
    StartUp = GRASSStartup()
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 230,
 in __init__
    self._set_properties(grassVersion, grassRevisionStr)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 282,
 in _set_properties
    self.OnSetDatabase(None)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 929,
 in OnSetDatabase
    self.UpdateLocations(self.gisdbase)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 796,
 in UpdateLocations
    self.lblocations.InsertItems(self.listOfLocations, 0)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1152
, in InsertItems
    self._LoadData(choices, disabled)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1141
, in _LoadData
    index = self.InsertStringItem(sys.maxsize, item)
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_contr
ols.py", line 4761, in InsertStringItem
    return _controls_.ListCtrl_InsertStringItem(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "m_count == ListView_GetItemCount(GetHw
nd())" failed at ..\..\src\msw\listctrl.cpp(1629) in wxListCtrl::InsertItem(): m
_count should match ListView_GetItemCount
ERROR: Error in GUI startup. See messages above (if any) and if necessary, pleas
e report this error to the GRASS developers.
On systems with package manager, make sure you have the right GUI package, proba
bly named grass-gui, installed.
To run GRASS GIS in text mode use the -text flag.
Exiting...
Drücken Sie eine beliebige Taste . . .

Change History (10)

in reply to:  description ; comment:1 by hellik, 8 years ago

Replying to hellik:

error message:

Cleaning up temporary files...
Starting GRASS GIS...
Traceback (most recent call last):
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1200
, in <module>
    GRASSStartUp = StartUp(0)
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_core.
py", line 7981, in __init__
    self._BootstrapApp()
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_core.
py", line 7555, in _BootstrapApp
    return _core_.PyApp__BootstrapApp(*args, **kwargs)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1175
, in OnInit
    StartUp = GRASSStartup()
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 230,
 in __init__
    self._set_properties(grassVersion, grassRevisionStr)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 282,
 in _set_properties
    self.OnSetDatabase(None)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 929,
 in OnSetDatabase
    self.UpdateLocations(self.gisdbase)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 796,
 in UpdateLocations
    self.lblocations.InsertItems(self.listOfLocations, 0)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1152
, in InsertItems
    self._LoadData(choices, disabled)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1141
, in _LoadData
    index = self.InsertStringItem(sys.maxsize, item)
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_contr
ols.py", line 4761, in InsertStringItem
    return _controls_.ListCtrl_InsertStringItem(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "m_count == ListView_GetItemCount(GetHw
nd())" failed at ..\..\src\msw\listctrl.cpp(1629) in wxListCtrl::InsertItem(): m
_count should match ListView_GetItemCount
ERROR: Error in GUI startup. See messages above (if any) and if necessary, pleas
e report this error to the GRASS developers.
On systems with package manager, make sure you have the right GUI package, proba
bly named grass-gui, installed.
To run GRASS GIS in text mode use the -text flag.
Exiting...
Drücken Sie eine beliebige Taste . . .

Tested with osgeo4w winGRASS 7.1svn from today, still an issue

comment:2 by veroandreo, 8 years ago

Hi Helli,

I just updated grass71 from osgeo4w, so I have r68380, and no issues here. This is also a MSWindows 7 system. It all started normally. Also 7.0.4 works fine.

in reply to:  1 comment:3 by hellik, 8 years ago

Replying to hellik:

Replying to hellik:

error message:

Cleaning up temporary files...
Starting GRASS GIS...
Traceback (most recent call last):
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1200
, in <module>
    GRASSStartUp = StartUp(0)
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_core.
py", line 7981, in __init__
    self._BootstrapApp()
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_core.
py", line 7555, in _BootstrapApp
    return _core_.PyApp__BootstrapApp(*args, **kwargs)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1175
, in OnInit
    StartUp = GRASSStartup()
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 230,
 in __init__
    self._set_properties(grassVersion, grassRevisionStr)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 282,
 in _set_properties
    self.OnSetDatabase(None)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 929,
 in OnSetDatabase
    self.UpdateLocations(self.gisdbase)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 796,
 in UpdateLocations
    self.lblocations.InsertItems(self.listOfLocations, 0)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1152
, in InsertItems
    self._LoadData(choices, disabled)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1141
, in _LoadData
    index = self.InsertStringItem(sys.maxsize, item)
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_contr
ols.py", line 4761, in InsertStringItem
    return _controls_.ListCtrl_InsertStringItem(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "m_count == ListView_GetItemCount(GetHw
nd())" failed at ..\..\src\msw\listctrl.cpp(1629) in wxListCtrl::InsertItem(): m
_count should match ListView_GetItemCount
ERROR: Error in GUI startup. See messages above (if any) and if necessary, pleas
e report this error to the GRASS developers.
On systems with package manager, make sure you have the right GUI package, proba
bly named grass-gui, installed.
To run GRASS GIS in text mode use the -text flag.
Exiting...
Drücken Sie eine beliebige Taste . . .

Tested with osgeo4w winGRASS 7.1svn from today, still an issue

Another user reported the same issue, see

https://lists.osgeo.org/pipermail/grass-dev/2016-May/080213.html

in reply to:  2 comment:4 by hellik, 8 years ago

Replying to veroandreo:

Hi Helli,

I just updated grass71 from osgeo4w, so I have r68380, and no issues here. This is also a MSWindows 7 system. It all started normally. Also 7.0.4 works fine.

thanks for testing.

tested here again: OSGeo4W-GRASS GIS 7.1.svn (r68418) still fails with the above mentioned error.

OSGeo4W-GRASS GIS 7.0.4 works also fine here.

another test in the OSGeo4W-console:

C:\>grass71svn.bat --text

it starts in the text mode without any error, then:

C:\>g.gui wxpython

and the GUI starts also without any error.

any idea?

comment:5 by martinl, 8 years ago

The error seems to be connected to the startup screen. It's strange both versions (7.0.4 and 7.1svn are build against the same version of wxPython)

Version 0, edited 8 years ago by martinl (next)

comment:6 by dnewcomb, 8 years ago

OK, I just took the gis_set.py and gis_set.pyc from c:\program files\Grass GIS 7.0.3\gui\wxpython and copied to c:\program files\GRASS GIS 7.1svn\gui\wxpython and started grass GIS 7.1svn without the error. It looks like some cleanup has been done on the gis_set.py between the 7.0.x version and the 7.1 version.

comment:7 by neteler, 8 years ago

Milestone: 7.0.57.2.0

comment:8 by annakrat, 8 years ago

In 68477:

wxGUI: don't use sys.maxsize with wx.ListCtrl - breaks GUI on 64bit Windows, see #3011

comment:9 by annakrat, 8 years ago

Can someone confirm the fix and close this?

comment:10 by annakrat, 8 years ago

Resolution: fixed
Status: newclosed

I assume this works now.

Note: See TracTickets for help on using tickets.