View Issue Details

IDProjectCategoryView StatusLast Update
0037883LazarusCompilerpublic2020-10-23 14:06
ReporterIvon Assigned ToJuha Manninen  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Platformx86-64OSLinux 
Product Version2.1 (SVN) 
Summary0037883: The problem of building software in Lazarus 2.1.0 svn > 63557
DescriptionThe problem of building software in Lazarus 2.1.0 svn > 63557.
When building programs, a message is displayed at the end:

/usr/local/share/lazarus/lcl/interfaces/./gtk2/alllclintfunits.pas(35,3) Hint: (5023) Unit "Gtk2WSStdCtrls" not used in AllLCLIntfUnits
(1008) 60875 lines compiled, 2.1 sec
(1021) 3 warning(s) issued
(1022) 1323 hint(s) issued
(1023) 73 note(s) issued
An unhandled exception occurred at $0000000000526F42:
EAccessViolation: Access violation
  $0000000000526F42 LEAVECRITICALSECTION, line 1237 of ideexterntoolintf.pas
Hint: (lazarus) Missing state file of cmdbox 0.0: /media/u1/s1/Linux/Commander/Dc/SVN/doublecmd/components/CmdLine/lib/x86_64-linux/cmdbox.compiled
  $0000000000A6614C SETTHREAD, line 475 of exttools.pas
  $0000000000A6A2A4 SETTOOL, line 1391 of exttools.pas
  $0000000000A6B53E DESTROY, line 1697 of exttools.pas

Interestingly, this problem has already occurred in Lazarus:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=943600
https://bugs.freepascal.org/view.php?id=36318

Steps To Reproducemake clean bigide
make install
Additional InformationIn "https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=943600" it was suggested that we should introduce a delay time when using these procedures.
I added this trace and, apparently, it became this delay, and the build of programs in Lazarus began to run normally again.
The solution was simple:

lazarus/components/buildintf/ideexterntoolintf.pas:

uses
  Classes, SysUtils, Math, Laz_AVL_Tree,
  // LazUtils
  UTF8Process, LazFileUtils, LazFileCache, LazMethodList, LazLoggerBase,
  // BuildIntf
  BuildStrConsts, //;
  Crt; // my adding 2020-10-07 20:52

procedure TAbstractExternalTool.EnterCriticalSection;
begin
  // WriteLn('+TAbstractExternalTool.EnterCriticalSection: FWorkerMessages = ', HexStr(FWorkerMessages)); // My adding for trace
  Delay(1);
  FWorkerMessages.EnterCriticalSection;
  // WriteLn('-TAbstractExternalTool.EnterCriticalSection'); // My adding for trace
end;
procedure TAbstractExternalTool.LeaveCriticalSection;
begin
  Delay(1);
  Assert(Assigned(FWorkerMessages), 'TAbstractExternalTool.LeaveCriticalSection: FWorkerMessages=Nil.');
  // WriteLn('+TAbstractExternalTool.LeaveCriticalSection: FWorkerMessages = ', HexStr(FWorkerMessages)); // My adding for trace
  FWorkerMessages.LeaveCriticalSection;
  // WriteLn('-TAbstractExternalTool.LeaveCriticalSection'); // My adding for trace
end;

We added the line "Delay(1)" and everything was compiled without errors.
TagsNo tags attached.
Fixed in Revisionr64005
LazTarget-
WidgetsetGTK 2
Attached Files

Relationships

related to 0036318 resolvedJuha Manninen lazbuild crashes when compiling packages 

Activities

Ivon

2020-10-07 22:21

reporter   ~0126131

In "Additional Information:"
It must been replaced:
lazarus/components/buildintf/buildintf.pas:
by
lazarus/components/buildintf/ideexterntoolintf.pas

Juha Manninen

2020-10-07 22:57

developer   ~0126132

Last edited: 2020-10-08 13:05

View 2 revisions

You have steps to reproduce:
 make clean bigide
 make install
Those commands use makefiles. Your code changes would not affect it anyhow.
The bug reports you mentioned are about LazBuild.
Revisions 63557 and 63558 move FreeType into its own package. Doing "make clean all" should fix any compilation problems.

I fixed "ideexterntoolintf.pas" in Additional information.

Ivon

2020-10-09 13:59

reporter   ~0126178

Indeed, if you remove the insert "Delay(1);" in the procedures

TabstractExternalTool.EnterCriticalSection
TabstractExternalTool.LeaveCriticalSection

in «lazarus/components/buildintf/ideexterntoolintf.pas» and build Lazarus

make clean all
sudo make install

then the programs are built normally.
But then you can't use Lazarus to build it:

make clean bigide

because after that, when building programs, it is issued:

/usr/local/share/lazarus/components/synedit/allsynedit.pas(35,3) Hint: (5023) Un
it "SynEditWrappedView" not used in allsynedit
(1008) 117058 lines compiled, 5.1 sec
(1021) 50 warning(s) issued
(1022) 124 hint(s) issued
(1023) 74 note(s) issued
An unhandled exception occurred at $0000000000A690A6:
                                                     EAccessViolation: Access violation
       Hint: (lazarus) Missing state file of SynUni 1.8: /media/u1/s1/Linux/Commander/D
c/SVN/doublecmd/components/synunihighlighter/lib/x86_64-linux/SynUni.compiled
  $0000000000A690A6 SETTHREAD, line 475 of exttools.pas
                                                           $0000000000A6D204 SETTOOL, line 1391 of exttools.pas
                                   $0000000000A6E49E DESTROY, line 1697 of exttools.pas

If you leave the insert "Delay(1);" in "lazarus/components/buildintf/ideexterntoolintf.pas", then programs are normally assembled in Lazarus, built using:

make clean bigide
sudo make install

and with

make clean all
sudo make install

Juha Manninen

2020-10-09 14:41

developer   ~0126179

Last edited: 2020-10-10 00:55

View 3 revisions

I have trouble understanding this issue. The "steps to reproduce" should list the steps to reproduce the bug, in this case to reproduce the Access violation.
Apparently the "make" were not causing it.
I am building and running various applications in Lazarus without problems. Can you find clear steps to reproduce the bug?
You last error message is about doublecmd. It is not part of Lazarus project.

r63557 and r63558 sure do not cause an Access violation. The FreeType package builds without problems for almost 3 months now.
Can you please clarify how you tested that r63557 is guilty.

Ivon

2020-10-09 22:26

reporter   ~0126196

You are right, this happens when building Doublecmd. I wrote about this on October 4 and 7 to the Creator of this program, but he has not yet responded.

I use "svn update" to build and use the latest version of both Lazarus and Doublecmd.

If errors occurred when working with Doublecmd, it would clearly be the author's problem. But the error occurs when building Doublecmd in the Lazarus environment with FPC 3.2.0 or 3.0.4. This error does not occur if you do this in Lazarus 2.1.0 svn ≤ 63557. It occurs when using Lazarus 2.1.0 svn ≥ 63557 and by now.

You can build Doublecmd yourself and see this problem.

You can download the source codes for Doublecmd from the Link:

      svn checkout https://svn.code.sf.net/p/doublecmd/code/trunk doublecmd

make clean bigide
sudo make install

Launch Lazarus IDE
Close Lazarus IDE

Required libraries Linux

To build Double Commander on Linux you need to have development versions of a few libraries installed (libxxx-dev packages). If you get linking errors make sure you have all needed libraries. The following is the list of direct dependencies (packages names are from Ubuntu 10.04). If you use a package manager in your Linux distribution it should pull all of the indirect dependencies for you.

 libdbus-1-dev
 libglib2.0-dev
 libx11-dev
 libgtk2.0-dev (only GTK2)

 libqt4pas-dev (only Qt4)
 libqt5pas-dev (only Qt5)From command line (Linux, FreeBSD, macOS)

Use build.sh script to build DC on Linux, FreeBSD or macOS.

First you need the lazbuild utility of Lazarus to be somewhere in your PATH and if you installed a Lazarus package it should already be there. Otherwise you need to edit the build script and change the lazbuild variable to point to it.
On Linux three widgetsets are supported: GTK2, Qt4 and Qt5. You can choose one by setting lcl environment variable before executing the script to either gtk2 or qt or qt5, for example:

 $ lcl=gtk2 ./build.sh beta

Execute the script to start the build process. Make sure you use beta parameter if you're building for the first time, so that also components and plugins are built:

 $ ./build.sh beta

I use to build in GTK2:

./clean.sh (delete the results of the previous build)
./build.sh beta (with advanced error diagnostics)

or

./build.sh all (product version)

./install/linux/install.sh (if you need to install in linux permanently)

Anton Kavalenka

2020-10-10 08:13

reporter   ~0126202

My setup also periodically falls in this issue.
SVN update -> some units are recompiled. Crash in .SetTool
Another compilation -> other units recompiled depending on first-one. OK

Juha Manninen

2020-10-10 10:33

developer   ~0126204

I don't see any problem compiling and running DoubleCmd.
I opened project src/doublecmd.lpi, then opened / installed required packages.
Pressing F9 runs it nicely.

If I understand right, the other problems are in LazBuild, the same as in other mentioned issues. So this is a duplicate?

What is the "Delay(1);" you added? It does not compile.

Bart Broersma

2020-10-10 11:12

developer   ~0126206

> What is the "Delay(1);" you added? It does not compile.
He added unit Crt, which is a very big nono IMO.

Juha Manninen

2020-10-12 14:14

developer   ~0126256

Indeed. unit Crt is doing console UI. The unit IDEExternToolIntf does not depend on any kind of UI.
@Ivon, why would you add unit Crt there?

I am still confused with this report as it is mostly about DoubleCmd instead of Lazarus project. In my test DoubleCmd worked well.

Ivon

2020-10-12 17:02

reporter   ~0126261

I decided to investigate this problem in more detail. Commented out all my additions to "./components/buildintf/ideexterntoolintf.pas", i.e. returned to the original Lazarus text. Built Lazarus:

make clean bigide
sudo make install

Launched Lazarus. In the source code folder, Doublecmd installed the necessary components from the "Components" folder: opened each .lpk package file:

chsdet/chsdet.lpk
CmdLine/cmdbox.lpk
multithreadprocs/multithreadprocslaz.lpk
dcpcrypt/dcpcrypt.lpk
doublecmd/doublecmd_common.lpk
KASToolBar/kascomp.lpk
gifanim/pkg_gifanim.LPK
synunihighlighter/synuni.lpk (doublecmd >= 0.8)
viewer/viewerpackage.lpk

and install it into Lazarus (menu: Package -> Open package file (.lpk) -> Browse to needed .lpk file -> Press "Install", if "Install" disabled then press "Compile" instead). Choose "No" when asked for rebuilding Lazarus after each package then rebuild Lazarus when you have installed all of them.

Then from the folder "Plugins" compile:

wcx/cpio/src/cpio.lpi
wcx/deb/src/deb.lpi
wcx/rpm/src/rpm.lpi
wcx/unrar/src/unrar.lpi
wcx/zip/src/Zip.lpi

wdx/rpm_wdx/src/rpm_wdx.lpi
wdx/deb_wdx/src/deb_wdx.lpi
wdx/xpi_wdx/src/xpi_wdx.lpi
wdx/audioinfo/src/AudioInfo.lpi

wfx/ftp/src/ftp.lpi $DC_ARCH
wfx/samba/src/samba.lpi $DC_ARCH
wlx/WlxMplayer/src/wlxMplayer.lpi $DC_ARCH

dsx/DSXLocate/src/DSXLocate.lpi $DC_ARCH

After rebuilding Lazarus open the project file src/doublecmd.lpi.
In "Project->project parameters->compiler options→Build modes" selected "beta" so that the build matches the batch mode for this parameter.
Built Doublecmd without errors. You are right, there are no problems building programs in Lazarus IDE.

Problems occur when batch building "Doublecmd" via "lazbuild". So I wrote about it from the very beginning. With constant updates, we will use the batch build via LazBuild (this is more convenient), and not run Lazarus IDE every time.
To do this, we use *.sh files created by the author of the program:

./clean.sh
./build.sh beta or ./build.sh all

In build.sh lazbuild is used for compilation.
Collecting Lazarus: make clean bigide
Installing it: sudo make install
After that, go to the doublecmd source folder.

./clean.sh
./build.sh beta

and at the end of the build we get a strange message:

An unhandled exception occurred at $0000000000526F42:
EAccessViolation: Access violation
$0000000000526F42 LEAVECRITICALSECTION, line 1237 of ideexterntoolintf.pas
Hint: (lazarus) Missing state file of cmdbox 0.0: /media/u1/s1/Linux/Commander/Dc/SVN/doublecmd/components/CmdLine/lib/x86_64-linux/cmdbox.compiled
$0000000000A6614C SETTHREAD, line 475 of exttools.pas
$0000000000A6A2A4 SETTOOL, line 1391 of exttools.pas
$0000000000A6B53E DESTROY, line 1697 of exttools.pas

If after "sudo make install" Lazarus run:
build.sh components

or

build.sh plugins

or

build.sh

then after that "build.sh beta" passes without errors, and, until the next "sudo make install" Lazarus", "build.sh beta" or "build.sh all" passes without errors.

If you comment out the plugins build (plugins/build.sh in build_beta() and build_all(), i.e. a full DC build), this message does not appear.
This strange message started to appear when updating Lazarus to version > 63557 and up to today, but only after "sudo make install" in the Lazarus folder.
In "https://bugs.freepascal.org/view.php?id=36318" we suggested using "writeln" for diagnostics in 2019-11-15. Interestingly, when adding this diagnostic, this error message does not occur, but the overall message text increases dramatically when building Doublecmd. Adding "delay 1" instead of "writeln" does not generate a lot of unnecessary messages and allows to compile Doublecmd normally. Yes, and to do this, I added a Crt to unit. The solution is not perfect, but it solves the problem.

Maybe there are other solutions?

Anton Kavalenka

2020-10-12 18:53

reporter   ~0126262

TMessageLines class has properly guarded with critical section destructor, but none of this is guarded:
TmessageLines.GetlastLine
TmessageLines.Add
TmessageLines.Remove
......

Anton Kavalenka

2020-10-12 19:04

reporter   ~0126264

procedure TExternalTool.SetThread(AValue: TExternalToolThread);

setting CallAutofree flag should also be guarded by critical section

Juha Manninen

2020-10-12 21:21

developer   ~0126266

> This strange message started to appear when updating Lazarus to version > 63557 and up to today,
> but only after "sudo make install" in the Lazarus folder.

Revision > 63557 clearly hints that the make files need dependency for FreeType package somewhere.
On the other hand you should not get an error in ExtTools then. That sounds more like issue 0036318.
Weird...

Juha Manninen

2020-10-12 23:26

developer   ~0126273

@Anton Kavalenka, if you can reproduce and know how to fix it, please create a patch.

Ivon

2020-10-13 15:28

reporter   ~0126282

>Anton Kavalenka
>TMessageLines class has properly guarded with critical section destructor, but none of this is guarded:
>TmessageLines.GetlastLine
>TmessageLines.Add
>TmessageLines.Remove

For
TmessageLines.GetlastLine
TmessageLines.Add
TmessageLines.Remove

block

begin;
  EnterCriticalSection;
  try
...
  finally
    LeaveCriticalsection;
  end;
end;

doesn't solve the problem.

>procedure TExternalTool.SetThread(AValue: TexternalToolThread);
>setting CallAutofree flag should also be guarded by critical section

procedure TexternalTool.SetThread has properly is already guarded with critical section.

Anton Kavalenka

2020-10-13 15:58

reporter   ~0126283

As soon TexternalTool.SetThread is crashed in its own method LeaveCriticalSection calling
the reason may be that this TexternalTool instance is destroyed, so Self is not available.

Ivon

2020-10-13 17:04

reporter   ~0126284

Always can explain why this doesn't work. But how to make it work?

Interestingly, when Delay(0), the error message specified above is issued again.
So the most acceptable is delay(1).

Juha Manninen

2020-10-13 20:46

developer   ~0126286

What does this Delay() do? It is from unit Crt which has no relation to our TAbstractExternalTool class. How did you come up with an idea to use Crt here?
Is it similar with Sleep()? Does adding Sleep(1) make a difference?

Ivon

2020-10-13 23:51

reporter   ~0126289

issue "https://bugs.freepascal.org/view.php?id=36318" made me think that I should try a time delay to solve this problem.The time delay is provided by delay(). I tried several values in increments and got to 1. The positive result did not change and I stopped at 1 mlsec. A value of 0 resulted in a negative result. This is just a black box method: we submit a known value to the input, the box does something, and if the result suits us and is stable, then we have solved the problem. Now it remains to explain this to yourself. I do not yet know the connection between the use of delay and TAbstractExternalTool class, but apparently the delay is now needed for something. And the problem only appears if you build programs using lazbuild (in Lazarus IDE, this problem is not yet apparent, but it works fine with this insert) with some features, and if consider that the TAbstractExternalTool class is used in multithreading (for Lazarus 2.1.0 ⩽ 63557, this delay was not required).

procedure TAbstractExternalTool.EnterCriticalSection;
begin
  // WriteLn('+TAbstractExternalTool.EnterCriticalSection: FWorkerMessages = ', HexStr(FWorkerMessages)); // My adding for trace
  Delay(1); // my adding 2020-10-07 20:52
  FWorkerMessages.EnterCriticalSection;
  // WriteLn('-TAbstractExternalTool.EnterCriticalSection'); // My adding for trace
end;

procedure TAbstractExternalTool.LeaveCriticalSection;
begin
  Assert(Assigned(FWorkerMessages), 'TAbstractExternalTool.LeaveCriticalSection: FWorkerMessages=Nil.');
  // WriteLn('+TAbstractExternalTool.LeaveCriticalSection: FWorkerMessages = ', HexStr(FWorkerMessages)); // My adding for trace
  Delay(1); // my adding 2020-10-07 20:52
  FWorkerMessages.LeaveCriticalSection;
  // WriteLn('-TAbstractExternalTool.LeaveCriticalSection'); // My adding for trace
end;

Anton Kavalenka

2020-10-14 10:08

reporter   ~0126290

Delay on Unix is implemented through fpselect().
So this is kernel call and DEFINITELY would block current thread for context switch.
Windows implementation of delay() is Sleep() - this is also kernel call with context switch.

Ivon

2020-10-14 15:06

reporter   ~0126295

Last edited: 2020-10-14 15:22

View 2 revisions

This is understandable. Question: why is an error message displayed during build, but not always, but under certain conditions, and why does delay(1) help?
Yes, I forgot to add, this happens in Debian Sid 10.5, and it is not known what happens in other Linux and Windows.

Anton Kavalenka

2020-10-14 16:03

reporter   ~0126296

Last edited: 2020-10-14 16:05

View 2 revisions

@Ivon
I have same Debian 10.6 but stable.
The problem mentioned in this issue raised in very rare cases and only in lazbuild from commandline after SVN update.
It seems to me the IDE build process handles this problem slightly different and shows crash in FPC (runtime error 217) and points to completely irrelevant source line.

Ivon

2020-10-14 17:58

reporter   ~0126299

@Anton Kavalenka,

Interestingly if inserts "delay(1)" in "./components/buildintf/ideexterntoolintf.pas" in

procedure TAbstractExternalTool.EnterCriticalSection;
procedure TAbstractExternalTool.LeaveCriticalSection;

And after that build Lazarus, this solves this problem or not in your IDE and lazbuild ?

Juha Manninen

2020-10-14 20:10

developer   ~0126304

Ivon, we will not add Crt dependency. Can you please find another way to solve it? Does Sleep(1) help?

Ivon

2020-10-14 21:38

reporter   ~0126311

Last edited: 2020-10-14 21:40

View 2 revisions

@Anton Kavalenka
// Crt;
Replaced delay(1) with sleep(1).
Built Lazarus, installed it. Under it compiled DoubleCmd normally.
Went to DoubleCmd, launched ./clean, ./build.sh beta, sudo ./install.sh.
It's alright.

Juha Manninen

2020-10-15 02:13

developer   ~0126316

Ok, I added the Sleep(1) lines. Please test.
I hope it fixes the related issue and its related issues, too.

Ivon

2020-10-15 06:39

reporter   ~0126319

@Juha Manninen

I removed "./components/buildintf/ideexterntoolintf.pas"

svn update
make clean bigide
sudo make install

Built Lazarus, installed it. Under it compiled DoubleCmd normally.
Went to DoubleCmd, launched ./clean, ./build.sh beta, sudo ./install.sh.
It's alright.

Thank you very much!

Ivon

2020-10-23 01:23

reporter   ~0126482

Now from Lazarus 2.1.0 svn ≥ 64048 was issued at the end of the doublecmd lazbuild:

/media/u1/s1/Linux/Commander/Dc/SVN/doublecmd.laz/components/synunihighlighter/synuni.pas(10,37) Hint: (5023) Unit "SynUniRules" not used in SynUni
(1008) 14 lines compiled, 0.2 sec
(1022) 4 hint(s) issued

An unhandled exception occurred at $0000000000569D0F:
EAccessViolation: Access violation

  $0000000000569D0F SETTIMESTAMPS, line 2167 of project.pp
  $000000000056AC17 SETSOURCE, line 2428 of project.pp
  $000000000056E2A1 DOLOADLPR, line 3186 of project.pp
  $000000000056E470 READPROJECT, line 3218 of project.pp
  $00000000004053D3 LOADPROJECT, line 1018 of lazbuild.lpr
  $0000000000403E3C BUILDPROJECT, line 915 of lazbuild.lpr
  $00000000004024AB BUILDFILE, line 426 of lazbuild.lpr
  $0000000000407D33 RUN, line 1476 of lazbuild.lpr
  $000000000040A949 main, line 1879 of lazbuild.lpr

Ivon

2020-10-23 13:39

reporter   ~0126487

Last edited: 2020-10-23 13:40

View 2 revisions

Went to the beaten path:

./ide/project.pp
line 2160

Insert "writeln" for trace:

procedure TUnitInfo.SetTimeStamps;
var
  ResFilename: String;
begin
  fSourceChangeStep:=FSource.ChangeStep; // Indicates any change is source
  // Associated LFM resource file timestamp
  //if Component=nil then exit; <- Component is here always nil for some reason.
  WriteLn('+TUnitInfo.SetTimeStamps', '****'); // My adding for trace
  if FileExistsCached(ResFilename) then
    fComponentLFMLoadDate:=FileAgeCached(ResFilename);
  WriteLn('-TUnitInfo.SetTimeStamps', '****'); // My adding for trace
end;

make clean bigide
sudo make install

Went to the folder with DC

./clean.sh
./build.sh beta

Everything was fine.
Replaced "writeln" with "sleep(1)"
Everything was fine.

In Lazarus IDE, everything is still going fine.

procedure TUnitInfo.SetTimeStamps;
var
  ResFilename: String;
begin
  fSourceChangeStep:=FSource.ChangeStep; // Indicates any change is source
  // Associated LFM resource file timestamp
  //if Component=nil then exit; <- Component is here always nil for some reason.
  sleep(1);
  if FileExistsCached(ResFilename) then
    fComponentLFMLoadDate:=FileAgeCached(ResFilename);
  sleep(1);
end;

Issue History

Date Modified Username Field Change
2020-10-07 22:10 Ivon New Issue
2020-10-07 22:21 Ivon Note Added: 0126131
2020-10-07 22:57 Juha Manninen Note Added: 0126132
2020-10-08 13:04 Juha Manninen Additional Information Updated View Revisions
2020-10-08 13:04 Juha Manninen LazTarget => -
2020-10-08 13:04 Juha Manninen Widgetset GTK 2 => GTK 2
2020-10-08 13:05 Juha Manninen Note Edited: 0126132 View Revisions
2020-10-08 13:06 Juha Manninen Assigned To => Juha Manninen
2020-10-08 13:06 Juha Manninen Status new => feedback
2020-10-09 13:59 Ivon Note Added: 0126178
2020-10-09 13:59 Ivon Status feedback => assigned
2020-10-09 14:41 Juha Manninen Note Added: 0126179
2020-10-09 14:46 Juha Manninen Note Edited: 0126179 View Revisions
2020-10-09 22:26 Ivon Note Added: 0126196
2020-10-10 00:55 Juha Manninen Note Edited: 0126179 View Revisions
2020-10-10 08:13 Anton Kavalenka Note Added: 0126202
2020-10-10 10:33 Juha Manninen Note Added: 0126204
2020-10-10 11:12 Bart Broersma Note Added: 0126206
2020-10-12 14:14 Juha Manninen Note Added: 0126256
2020-10-12 17:02 Ivon Note Added: 0126261
2020-10-12 18:53 Anton Kavalenka Note Added: 0126262
2020-10-12 19:04 Anton Kavalenka Note Added: 0126264
2020-10-12 21:21 Juha Manninen Note Added: 0126266
2020-10-12 23:26 Juha Manninen Note Added: 0126273
2020-10-13 15:28 Ivon Note Added: 0126282
2020-10-13 15:58 Anton Kavalenka Note Added: 0126283
2020-10-13 17:04 Ivon Note Added: 0126284
2020-10-13 20:46 Juha Manninen Note Added: 0126286
2020-10-13 23:51 Ivon Note Added: 0126289
2020-10-14 10:08 Anton Kavalenka Note Added: 0126290
2020-10-14 15:06 Ivon Note Added: 0126295
2020-10-14 15:22 Ivon Note Edited: 0126295 View Revisions
2020-10-14 16:03 Anton Kavalenka Note Added: 0126296
2020-10-14 16:05 Anton Kavalenka Note Edited: 0126296 View Revisions
2020-10-14 17:58 Ivon Note Added: 0126299
2020-10-14 20:10 Juha Manninen Note Added: 0126304
2020-10-14 21:38 Ivon Note Added: 0126311
2020-10-14 21:40 Ivon Note Edited: 0126311 View Revisions
2020-10-15 01:18 Juha Manninen Relationship added related to 0036318
2020-10-15 02:13 Juha Manninen Status assigned => resolved
2020-10-15 02:13 Juha Manninen Resolution open => fixed
2020-10-15 02:13 Juha Manninen Fixed in Revision => r64005
2020-10-15 02:13 Juha Manninen Widgetset GTK 2 => GTK 2
2020-10-15 02:13 Juha Manninen Note Added: 0126316
2020-10-15 06:39 Ivon Note Added: 0126319
2020-10-23 01:23 Ivon Note Added: 0126482
2020-10-23 13:39 Ivon Note Added: 0126487
2020-10-23 13:40 Ivon Note Edited: 0126487 View Revisions