gotthardp / python-mercuryapi

Python wrapper for the ThingMagic Mercury API
MIT License
124 stars 63 forks source link

this change to mercury.c address following error and warnings: #148

Open lefty01 opened 8 months ago

lefty01 commented 8 months ago

mercury.c: In function ‘parse_gen2filter’: mercury.c:442:86: warning: comparison of integer expressions of different signedness: ‘TMR_GEN2_Select_action’ and ‘int’ [-Wsign-compare] 442 | else if ((tag_filter->u.gen2Select.action = str2action(object2str(obj))) == -1)

mercury.c: In function ‘Reader_write_tag_mem’: mercury.c:1007:135: error: macro "TMR_writeTagMemBytes" requires 7 arguments, but only 6 given 1007 | ret = TMR_writeTagMemBytes(&self->reader, tag_filter, bank, address, PyByteArray_Size(data), (uint8_t *)PyByteArray_AsString(data));

mercury.c: In function ‘PyInit_mercury’: mercury.c:2363:5: warning: ‘PyEval_InitThreads’ is deprecated [-Wdeprecated-declarations] 2363 | PyEval_InitThreads();

TMR_writeTagMemBytes is marked deprecated in the tm_reader.h file from latest api

lefty01 commented 8 months ago

the mismatch in args for TMR_writeTagMemBytes is causing an real error. so it's debateable whether to fix it or remove as I did due to the deprecation message in the api source.

same goes for the warnings, maybe handling the unsigned vs signed compare this way is not the best ... or we eant to ignore. so this is just an idea.