Claudio,

> Nice, although some of them seem to be false alarms. For example,
> TextType::compare(). The typical result is -1, 0, 1. I would prefer to
> change the result to plain int, but it may not be possible (I would have to
> check all places affected).

The problem here may be theoretical rather than practical, but it does 
exist. Memcmp is not guaranteed to return 1 / -1, it's only guaranteed 
to return positive / negative. If one day it will start returning 
1000000 for "greater-than", we're in trouble.

> 1.- In CCH_down_grade_dbb() I need to know what's the scope for the lock

Do you mean bcbSync? I believe it's there only to clean the 
BCB_exclusive flag and later execute the "if (bcb && bcb->bcb_count)" block.

> 3.- This supposedly dangerous definition
> const ULONG END_BUCKET = (~0) << 1; is interesting, would
> const ULONG END_BUCKET = (~0) ^ 1;
> do the trick?

What's wrong with "(~0u) << 1" that they suggest instead?


Dmitry


------------------------------------------------------------------------------
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to