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