Check-in [f5850b2ee6]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:fixed comparing typeinfo callbacks to handle NULLs
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256:f5850b2ee6714e06a0242877465a3d27b9dc8d0c500bcfcbdcf74e74dedd8a94
User & Date: grable 2018-11-04 16:04:13
Context
2018-11-24
12:40
added free to info command list check-in: fc66a7ee08 user: grable tags: trunk
2018-11-04
16:04
fixed comparing typeinfo callbacks to handle NULLs check-in: f5850b2ee6 user: grable tags: trunk
2018-11-03
01:25
fixed pointer imports check-in: aa53dedc32 user: grable tags: trunk
Changes

Changes to jimff.c.

244
245
246
247
248
249
250

251
252
253
254
255
256
257
258
static int jimff_compare_typeinfo( const struct jimff_typeinfo* a, const struct jimff_typeinfo* b) {
	if(a == b) return 1;
	if( a->argc != b->argc || strcmp( a->typetag, b->typetag)) return 0;
	for( int i = 0; i < a->numpointers; i++) {
		if( a->pointersizes[i] != b->pointersizes[i]) return 0;
	}
	for( int i = 0; i < a->numcallbacks; i++) {

		if( strcmp( a->callbacks[i], b->callbacks[i])) return 0;
	}
	return 1;
}

static unsigned long jimff_context_epoch = 0;









>
|







244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
static int jimff_compare_typeinfo( const struct jimff_typeinfo* a, const struct jimff_typeinfo* b) {
	if(a == b) return 1;
	if( a->argc != b->argc || strcmp( a->typetag, b->typetag)) return 0;
	for( int i = 0; i < a->numpointers; i++) {
		if( a->pointersizes[i] != b->pointersizes[i]) return 0;
	}
	for( int i = 0; i < a->numcallbacks; i++) {
		if(a->callbacks[i] == b->callbacks[i]) continue;
		if(a->callbacks[i] == NULL || b->callbacks[i] == NULL || strcmp( a->callbacks[i], b->callbacks[i])) return 0;
	}
	return 1;
}

static unsigned long jimff_context_epoch = 0;