mirror of
				https://github.com/postgres/postgres.git
				synced 2025-10-29 22:49:41 +03:00 
			
		
		
		
	A little paranoia never hurt anyone.
This commit is contained in:
		| @@ -8,7 +8,7 @@ | |||||||
|  * |  * | ||||||
|  * |  * | ||||||
|  * IDENTIFICATION |  * IDENTIFICATION | ||||||
|  *	  $Header: /cvsroot/pgsql/src/backend/utils/misc/Attic/database.c,v 1.49 2001/10/25 05:49:51 momjian Exp $ |  *	  $Header: /cvsroot/pgsql/src/backend/utils/misc/Attic/database.c,v 1.50 2002/05/05 17:50:04 tgl Exp $ | ||||||
|  * |  * | ||||||
|  *------------------------------------------------------------------------- |  *------------------------------------------------------------------------- | ||||||
|  */ |  */ | ||||||
| @@ -222,8 +222,10 @@ GetRawDatabaseInfo(const char *name, Oid *db_id, char *path) | |||||||
| 				/* Found it; extract the OID and the database path. */ | 				/* Found it; extract the OID and the database path. */ | ||||||
| 				*db_id = tup.t_data->t_oid; | 				*db_id = tup.t_data->t_oid; | ||||||
| 				pathlen = VARSIZE(&(tup_db->datpath)) - VARHDRSZ; | 				pathlen = VARSIZE(&(tup_db->datpath)) - VARHDRSZ; | ||||||
|  | 				if (pathlen < 0) | ||||||
|  | 					pathlen = 0;				/* pure paranoia */ | ||||||
| 				if (pathlen >= MAXPGPATH) | 				if (pathlen >= MAXPGPATH) | ||||||
| 					pathlen = MAXPGPATH - 1;	/* pure paranoia */ | 					pathlen = MAXPGPATH - 1;	/* more paranoia */ | ||||||
| 				strncpy(path, VARDATA(&(tup_db->datpath)), pathlen); | 				strncpy(path, VARDATA(&(tup_db->datpath)), pathlen); | ||||||
| 				path[pathlen] = '\0'; | 				path[pathlen] = '\0'; | ||||||
| 				goto done; | 				goto done; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user