On 08/06/14 14:01, Dimitry Sibiryakov wrote:
> 06.08.2014 11:48, Alex Peshkoff wrote:
>> I want to have warnings in IStatus separate from errors (keeping them in
>> same status vector IMO artifact of isc api). I think that after it this
>> is not big problem. Am I missing something obvious?
>     Yes. If not in the status, where should warnings be? And how an 
> application can find
> out their existence? (Let alone doubtful meaning of warnings for most apps.)

I've not said - not the status, I've said - in the status but separate 
from errors. I.e. if you have now function get() returning mix of errors 
and warnings, you will have getErrors() and getWarnings() instead.

>>> - Who is going to initialize status vectors?
>> This is not directly related here, but it seems possible to reset errors
>> in IStatus right after copying them to StatusException but before
>> throwing it. But still remains a problem - who will remove warnings from
>> IStatus?
>     IMHO, IStatus should be created clean and then never reset till the 
> death. Errors
> should be appended to the end. In this case it will be possible to report 
> primary source
> of the error and following snowball on cleanup at the same time.

Sorry, looks like you do not understand what is discussed here.

>> Currently we have a lot of void functions, but certainly they can be
>> made to return boolean, therefore avoiding a need in a check if non-zero
>> is returned (non-zero can be also valid pointer to interface, number of
>> bytes read from blob, etc.). I.e. if we may tune API to make error
>> possible only in case of false/zero/NULL returned, we may in many cases
>> avid a need in checking IStatus explicitly.
>     May be you at last give up and accept COM with returning of HSTATUS? 
> Doomed Delphi
> users could directly use "safecall" and interface definitions then.
>

COM was first option discussed. If you review a few years old devel 
archives you will understand why we decided not to use it.


------------------------------------------------------------------------------
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to