16
16
*
17
17
*Copyright (c) 2001, PostgreSQL Global Development Group
18
18
*
19
- *$Header: /cvsroot/pgsql/src/backend/postmaster/pgstat.c,v 1.14 2001/10/25 05:49:40 momjian Exp $
19
+ *$Header: /cvsroot/pgsql/src/backend/postmaster/pgstat.c,v 1.15 2001/11/26 22:31:08 tgl Exp $
20
20
* ----------
21
21
*/
22
22
#include "postgres.h"
@@ -464,7 +464,8 @@ pgstat_report_tabstat(void)
464
464
for (i = 0 ;i < pgStatTabstatUsed ;i ++ )
465
465
{
466
466
n = pgStatTabstatMessages [i ]-> m_nentries ;
467
- len = offsetof(PgStat_MsgTabstat ,m_entry [n ]);
467
+ len = offsetof(PgStat_MsgTabstat ,m_entry [0 ])+
468
+ n * sizeof (PgStat_TableEntry );
468
469
469
470
pgStatTabstatMessages [i ]-> m_xact_commit = pgStatXactCommit ;
470
471
pgStatTabstatMessages [i ]-> m_xact_rollback = pgStatXactRollback ;
@@ -573,7 +574,8 @@ pgstat_vacuum_tabstat(void)
573
574
*/
574
575
if (msg .m_nentries >=PGSTAT_NUM_TABPURGE )
575
576
{
576
- len = offsetof(PgStat_MsgTabpurge ,m_tableid [msg .m_nentries ]);
577
+ len = offsetof(PgStat_MsgTabpurge ,m_tableid [0 ])
578
+ + msg .m_nentries * sizeof (Oid );
577
579
578
580
pgstat_setheader (& msg .m_hdr ,PGSTAT_MTYPE_TABPURGE );
579
581
pgstat_send (& msg ,len );
@@ -587,7 +589,8 @@ pgstat_vacuum_tabstat(void)
587
589
*/
588
590
if (msg .m_nentries > 0 )
589
591
{
590
- len = offsetof(PgStat_MsgTabpurge ,m_tableid [msg .m_nentries ]);
592
+ len = offsetof(PgStat_MsgTabpurge ,m_tableid [0 ])
593
+ + msg .m_nentries * sizeof (Oid );
591
594
592
595
pgstat_setheader (& msg .m_hdr ,PGSTAT_MTYPE_TABPURGE );
593
596
pgstat_send (& msg ,len );