diff options
author | Bruce Momjian <bruce@momjian.us> | 1998-09-07 05:35:48 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 1998-09-07 05:35:48 +0000 |
commit | 202751921d9a7adb0181bc0afd990a53e6015141 (patch) | |
tree | 44b62cb083afebf83339685b388132cce0f87298 /src/backend/commands/copy.c | |
parent | e15807f4103034f42963cef17e39028c1dba58f7 (diff) | |
download | postgresql-202751921d9a7adb0181bc0afd990a53e6015141.tar.gz postgresql-202751921d9a7adb0181bc0afd990a53e6015141.zip |
Alignment cleanup so no more massive switch statements for alignment,
just two macros.
Diffstat (limited to 'src/backend/commands/copy.c')
-rw-r--r-- | src/backend/commands/copy.c | 37 |
1 files changed, 4 insertions, 33 deletions
diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c index 2f0b6d2833c..c293762f0cd 100644 --- a/src/backend/commands/copy.c +++ b/src/backend/commands/copy.c @@ -6,7 +6,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.59 1998/09/01 04:27:47 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.60 1998/09/07 05:35:42 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -661,38 +661,9 @@ CopyFrom(Relation rel, bool binary, bool oids, FILE *fp, char *delim) } else if (nulls[i] != 'n') { - switch (attr[i]->attlen) - { - case -1: - if (attr[i]->attalign == 'd') - ptr = (char *) DOUBLEALIGN(ptr); - else - ptr = (char *) INTALIGN(ptr); - values[i] = (Datum) ptr; - ptr += *(uint32 *) ptr; - break; - case sizeof(char): - values[i] = (Datum) ptr; - ptr += attr[i]->attlen; - break; - case sizeof(short): - ptr = (char *) SHORTALIGN(ptr); - values[i] = (Datum) ptr; - ptr += attr[i]->attlen; - break; - case sizeof(int32): - ptr = (char *) INTALIGN(ptr); - values[i] = (Datum) ptr; - ptr += attr[i]->attlen; - break; - default: - if (attr[i]->attalign == 'd') - ptr = (char *) DOUBLEALIGN(ptr); - else - ptr = (char *) LONGALIGN(ptr); - values[i] = (Datum) ptr; - ptr += attr[i]->attlen; - } + ptr = att_align(ptr, attr[i]->attlen, attr[i]->attalign); + values[i] = (Datum) ptr; + ptr = att_addlength(ptr, attr[i]->attlen, ptr); } } } |