* YAM_UT.c: when closing a temp file which was never opened before YAM did
nevertheless try to delete this file which of course must fail. As a
consequence this file was treated as a zombie file furtheron. When all this
happened while YAM was shutting down adding the file to the zombie file list
caused a crash, because the timer which then got restarted had been deleted
already. Now only existing files will be treated as zombie files. This
closes #242.
27 lines of code changed in 3 files:
* Rexx.c: after successfully sending the message to the first instance the second instance must wait for the reply.
7 lines of code changed in 1 file:
* Rexx.c: fixed a warning
7 lines of code changed in 1 file:
* YAM.c, Rexx.c: starting YAM a second time with startup options to compose a
new mail will now pass these options via ARexx to the already running
instance. Before the first instance would just have popped up and the new
mail options were completely ignored. This closes #236.
101 lines of code changed in 3 files:
* YAM.c, mui/YAMApplication.c: moved the "MultipleYAM" variable check out of
the application class as it will be necessary to know the single task state
in case creating the application fails due to a double start.
9 lines of code changed in 3 files:
* BayesFilter.c: fixed a warning.
2 lines of code changed in 1 file:
* YAM.c, mui/YAMApplication.c: moved the notification stuff to the application
subclass.
20 lines of code changed in 3 files:
* tcp/http.c, mui/YAMApplication.c: downloading a URL (i.e. the update
informations for YAM) will now also create an invisible transfer window.
As a consequence the transfer window can be closed an made visible again by
a new menu item in the "Project" menu.
168 lines of code changed in 7 files:
* Threads.c: fixed slightly wrong handling of startup message.
6 lines of code changed in 1 file:
* Threads.c: in case YAM had to create additional threads while another thread
finished its work at the same time the replied working message would be
treated as the replied startup message. Eventually the true replied startup
message would be treated as a normal message and be freed, which must not be
done for a non-allocated static message. The result was a crash. Many thanks
to Simone Bevilacqua for the hint.
64 lines of code changed in 3 files:
* YAM_RE.c, mui/ReadMailGroup.c: possible parsing errors while checking a mail
for spam content will not show any error anymore. Normal reading of the mail
however will still show any parsing error.
19 lines of code changed in 2 files:
* BayesFilter.c: switched several variable declarations from STRPTR to char* and added some const keywords.
56 lines of code changed in 2 files:
* BayesFilter.c: removed an unnecessary duplicate allocation of a newly added
string.
56 lines of code changed in 1 file:
* YAM_COs.c: optimized one strlen() call away.
4 lines of code changed in 1 file:
* MailImport.c: putting the complete application to sleep while scanning the
file to be imported is absolute non-sense with the thread framework we have
now.
0 lines of code changed in 1 file:
* YAM_MAf.c, YAM_UT.c: removed the non-thread safe GetNextLine() function. It
was used during folder index loading only.
48 lines of code changed in 3 files:
* tcp/Connection.c: shrinked the 1-second WaitSelect() loops to one single
call. The TCP/IP connection are now used in separate threads only and hence
cannot freeze the GUI anymore.
70 lines of code changed in 1 file:
* BayesFilter.c: raised the inital hash table size to 4096 words.
1 lines of code changed in 1 file:
* Debug.c: corrected the printed time by the STOPCLOCK() debug macro. We are
dealing with microseconds instead of nanoseconds.
1 lines of code changed in 1 file:
* YAM.c: raised the batch size for the mail item pools to 1000.
2 lines of code changed in 1 file:
* YAM_MAf.c: the automatic index flushing will now also reset the folders' new
mail counter and update the folder treeview accordingly.
60 lines of code changed in 1 file:
* YAM.c: set a garage collection policy for the item pools
2 lines of code changed in 1 file:
* YAM_WR.c: removed unnecessary cast
1 lines of code changed in 1 file:
* MailList.c: added missing #include for the AROS build
1 lines of code changed in 1 file:
* misc: make use of item pools for all struct Mail and struct MailNode. These
are the most often used structures in YAM and (de)allocation will be sped up
a lot. As a consequence there are new functions to allocate, clone and free
mails.
96 lines of code changed in 8 files:
* extrasrc/AllocSysObject.c, extrasrc/ItemPool#?.c: added an emulation for
AmigaOS4's item pools. These can handle lots of constant size allocations
much faster than normal pools.
286 lines of code changed in 8 files:
* MailTransferList.c: added some comments
3 lines of code changed in 1 file:
* tcp/pop3.c, MailTransferList.c: the POP3 thread now checks for mails to
either be transferred or deleted to actually start the download. Before only
mails to be transferred were respected which made it impossible to just
delete mails from a server without downloading any. This closes #239.
3 lines of code changed in 2 files:
* YAM.c, mui/YAMApplication.c: converted the double start hook to a method of
the application object.
21 lines of code changed in 2 files:
* mui/CheckboxRequestWindow.c: replaced toggle hook by a proper method.
22 lines of code changed in 1 file:
* mui/ConfigPageList.c: removed unused variable
0 lines of code changed in 1 file:
* mui/FolderRequestList.c: removed unneeded include
0 lines of code changed in 1 file:
* mui/FolderRequestList.c, mui/FolderRequestWindow.c: split off the folder
request list to a separate class to be able to implement the hooks as proper
methods.
119 lines of code changed in 3 files:
* mui/CharsetPopupList.c: added missing include for the AROS build
1 lines of code changed in 1 file:
* mui/CharsetPopupList.c, MUIObjects.c: split off the charset popup list to a
separate class to be able to implement the hooks as proper methods.
127 lines of code changed in 3 files:
* tcp/pop3.c: a mail which exceeds the preselection size limit but has been
downloaded before will no longer cause the preselection window to appear.
2 lines of code changed in 1 file:
* mui/FilterPopupList.c, YAM_FI.c: split off the filter popup list to a
separate class to be able to implement the hooks as proper methods.
101 lines of code changed in 3 files:
* mui/PlaceholderPopupList.c: renamed the class, just to please Jens ;)
307 lines of code changed in 4 files:
* mui/AttachmentImage.c: added missing include for the AROS build.
2 lines of code changed in 2 files:
* mui/BirthdayRequestWindow.c: added a missing include for the AROS build and made some variables a bit more local.
19 lines of code changed in 1 file:
* mui/PlaceholderList.c: insert all description entries at once.
51 lines of code changed in 1 file:
* mui/PlaceholderList.c, YAM_COg.c: split off the variable placeholder list to
a separate class to be able to implement the hooks as proper methods.
279 lines of code changed in 3 files:
* mui/AccountList.c, YAM_COg.c: split off the POP3 account list to a separate
class to be able to implement the hooks as proper methods.
91 lines of code changed in 3 files:
* extrasrc/AllocSysObject.c: the debug build now munges the freed memory as
far as this is possible to catch possible "access after free" type of bugs.
34 lines of code changed in 1 file:
* mui/YAMApplication.c: make sure YAM doesn't steal the focus in case a
visible but inactive transfer window is requested.
5 lines of code changed in 1 file:
* YAM_RE.c: do not access the struct ReadMailData after disposing the
ReadWindow object as this will read just free()'d memory. This closes #234.
12 lines of code changed in 1 file:
* mui/AddressmatchList.c, AddressmatchPopup.c: separated the old class into
two classes to be able to implement the old hooks as proper methods.
569 lines of code changed in 6 files:
* mui/YAMApplication.c: clear the contents of newly allocated entries for the
address match list to avoid display of corrupted strings.
13 lines of code changed in 1 file:
* YAM_UT.c: we will now always show the unit with all kind of size display
settings rather then omitting 'B' if only bytes are shown. This should make
the display more consistent.
4 lines of code changed in 1 file:
* YAM_UT.c: converting a mail size to a string now uses the correct power of
10 for the conversion. This closes #238.
76 lines of code changed in 1 file:
* Debug.h: fixed a typo in the STOPCLOCK() macro which made it unusable.
5 lines of code changed in 2 files:
* YAM_MAf.c: reverted the index save optimization as snprintf() might return
larger numbers than the amount of character actually used.
7 lines of code changed in 1 file:
* YAM_FI.c: calculate some stuff outside the header search loop once instead
of in each iteration.
15 lines of code changed in 1 file:
* MailImport.c: save one strlen() call.
6 lines of code changed in 1 file:
* MailList.c: readded the NewMinList() call before moving all nodes back to the list.
1 lines of code changed in 1 file:
* mui/YAMApplication.c: fixed a wrong sizeof() statement when adding a new
entry to the EMail cache. This closes #237. At least I hope. Please reopen
the ticket if the bug is still present.
1 lines of code changed in 1 file:
* Timer.c: added a safety check to avoid restarting an already cleaned up
timer during the termination process.
22 lines of code changed in 1 file:
* tcp/http.c: fixed the off by one length calculation
12 lines of code changed in 1 file:
* tcp/Connection.c: fixed a typo.
1 lines of code changed in 1 file: