LCOV - differential code coverage report
Current view: top level - contrib/ltree - crc32.c (source / functions) Coverage Total Hit CBC
Current: Differential Code Coverage HEAD vs 15 Lines: 100.0 % 10 10 10
Current Date: 2023-04-08 17:13:01 Functions: 100.0 % 1 1 1
Baseline: 15 Line coverage date bins:
Baseline Date: 2023-04-08 15:09:40 (240..) days: 100.0 % 10 10 10
Legend: Lines: hit not hit Function coverage date bins:
(240..) days: 100.0 % 1 1 1

 Age         Owner                  TLA  Line data    Source code
                                  1                 : /* contrib/ltree/crc32.c */
                                  2                 : 
                                  3                 : /*
                                  4                 :  * Implements CRC-32, as used in ltree.
                                  5                 :  *
                                  6                 :  * Note that the CRC is used in the on-disk format of GiST indexes, so we
                                  7                 :  * must stay backwards-compatible!
                                  8                 :  */
                                  9                 : 
                                 10                 : #include "postgres.h"
                                 11                 : #include "ltree.h"
                                 12                 : 
                                 13                 : #ifdef LOWER_NODE
                                 14                 : #include <ctype.h>
                                 15                 : #define TOLOWER(x)  tolower((unsigned char) (x))
                                 16                 : #else
                                 17                 : #define TOLOWER(x)  (x)
                                 18                 : #endif
                                 19                 : 
                                 20                 : #include "crc32.h"
                                 21                 : #include "utils/pg_crc.h"
                                 22                 : 
                                 23                 : unsigned int
 1103 tgl                        24 CBC      156349 : ltree_crc32_sz(const char *buf, int size)
                                 25                 : {
                                 26                 :     pg_crc32    crc;
                                 27          156349 :     const char *p = buf;
                                 28                 : 
 3078 heikki.linnakangas         29          156349 :     INIT_TRADITIONAL_CRC32(crc);
                                 30          375003 :     while (size > 0)
                                 31                 :     {
 2878 bruce                      32          218654 :         char        c = (char) TOLOWER(*p);
                                 33                 : 
 3078 heikki.linnakangas         34          437308 :         COMP_TRADITIONAL_CRC32(crc, &c, 1);
                                 35          218654 :         size--;
                                 36          218654 :         p++;
                                 37                 :     }
                                 38          156349 :     FIN_TRADITIONAL_CRC32(crc);
                                 39          156349 :     return (unsigned int) crc;
                                 40                 : }
        

Generated by: LCOV version v1.16-55-g56c0a2a