incorrect handling of long (multi-packet) field?
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Drizzle Client & Protocol Library |
Fix Released
|
Medium
|
Andrew Hutchings |
Bug Description
I'm not sure if this code is actually incorrect, or if it just looks wrong, but in field.cc near line 287 there's this code:
{
con-
con-
con-
}
The intent, I think, is to cause libdrizzle to read the next packet header and then return to reading the current field, but the two 'push' operations are in the wrong order for that.
(Since the current state is presumably drizzle_
Related branches
- Drizzle Trunk: Pending requested
-
Diff: 144 lines (+19/-12)7 files modifiedlibdrizzle/datetime.h (+1/-0)
libdrizzle/pack.cc (+10/-2)
libdrizzle/pack.h (+2/-2)
libdrizzle/statement.cc (+2/-2)
libdrizzle/statement_param.cc (+3/-4)
tests/unit/datetypes.c (+1/-1)
tests/unit/include.am (+0/-1)
Changed in libdrizzle: | |
importance: | Undecided → Medium |
assignee: | nobody → Andrew Hutchings (linuxjedi) |
status: | New → Triaged |
milestone: | none → 5.1.4 |
you are totally right, I think that is really old code. Good spot. Removing those worked perfectly and I believe gave us a nice small optimization too :)