mirror of
				https://github.com/postgres/postgres.git
				synced 2025-11-03 09:13:20 +03:00 
			
		
		
		
	c.h #includes a number of core libc header files, such as <stdio.h>. There's no point in re-including these after having read postgres.h, postgres_fe.h, or c.h; so remove code that did so. While at it, also fix some places that were ignoring our standard pattern of "include postgres[_fe].h, then system header files, then other Postgres header files". While there's not any great magic in doing it that way rather than system headers last, it's silly to have just a few files deviating from the general pattern. (But I didn't attempt to enforce this globally, only in files I was touching anyway.) I'd be the first to say that this is mostly compulsive neatnik-ism, but over time it might save enough compile cycles to be useful.
		
			
				
	
	
		
			40 lines
		
	
	
		
			667 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			667 B
		
	
	
	
		
			C
		
	
	
	
	
	
/* contrib/ltree/crc32.c */
 | 
						|
 | 
						|
/*
 | 
						|
 * Implements CRC-32, as used in ltree.
 | 
						|
 *
 | 
						|
 * Note that the CRC is used in the on-disk format of GiST indexes, so we
 | 
						|
 * must stay backwards-compatible!
 | 
						|
 */
 | 
						|
 | 
						|
#include "postgres.h"
 | 
						|
 | 
						|
#ifdef LOWER_NODE
 | 
						|
#include <ctype.h>
 | 
						|
#define TOLOWER(x)	tolower((unsigned char) (x))
 | 
						|
#else
 | 
						|
#define TOLOWER(x)	(x)
 | 
						|
#endif
 | 
						|
 | 
						|
#include "utils/pg_crc.h"
 | 
						|
#include "crc32.h"
 | 
						|
 | 
						|
unsigned int
 | 
						|
ltree_crc32_sz(char *buf, int size)
 | 
						|
{
 | 
						|
	pg_crc32	crc;
 | 
						|
	char	   *p = buf;
 | 
						|
 | 
						|
	INIT_TRADITIONAL_CRC32(crc);
 | 
						|
	while (size > 0)
 | 
						|
	{
 | 
						|
		char		c = (char) TOLOWER(*p);
 | 
						|
 | 
						|
		COMP_TRADITIONAL_CRC32(crc, &c, 1);
 | 
						|
		size--;
 | 
						|
		p++;
 | 
						|
	}
 | 
						|
	FIN_TRADITIONAL_CRC32(crc);
 | 
						|
	return (unsigned int) crc;
 | 
						|
}
 |