[Lxr-dev] [ lxr-Bugs-1347560 ] duplicated lxr_useage entries
Brought to you by:
ajlittoz
From: SourceForge.net <no...@so...> - 2012-01-25 19:04:51
|
Bugs item #1347560, was opened at 2005-11-03 10:53 Message generated for change (Comment added) made by ajlittoz You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=390117&aid=1347560&group_id=27350 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: genxref Group: v0.9.4 >Status: Closed >Resolution: Rejected Priority: 6 Private: No Submitted By: Jean Mao (qijingmao) Assigned to: Malcolm Box (mbox) Summary: duplicated lxr_useage entries Initial Comment: I am using lxr-0.9.2 currently, but I have tried lxr-0.9.4 and which has the same problem. We are using mysql 4.1.7 and plain files. The 'genxref' creates duplicated lxr_useage entries when the source code has something like: wchar_t * foo(wchar_t *str, int len, char *ref_f, ...) { va_list va; va_start(va,ref_f); return( smsg_put_buffer_va(str, len, ref_f, va)); } /* End of smsg_put_buffer() */ .......... foo (buf, K_PATH_SIZE, "Error reading the logfile:\\n %0s\\n\\nSelect the \"Cancel\" button to exit.", filepath); ...... That is, when the next line for calling the function is really long. I have dug into the code and found the problem is at the line 184 of the lib/LXR/Lang/Generic.pm (lxr-0.9.4): @lines = ($frag =~ /(.*?\n)/g, $frag =~ /([^\n]*)$/); Where the $frag is end with: "foo (buf, K_PATH_SIZE," with carriage return (\n) and code doubled the last line. Could this be fixed? Please let me know if you have any questions. Thank you in advance for your help. Jean ---------------------------------------------------------------------- >Comment By: Andre-Littoz (ajlittoz) Date: 2012-01-25 11:04 Message: Can't reproduce error with 0.11-beta. The generic parser has been deeply modified, perhaps correcting this problem. Can also be caused by a stale DB. It is recommended to always use genxref --reindexall when reindexing an existing source-tree after modifying it. Otherwise, stale references may lurk around in the DB, giving false duplicates. Reopen and attach a test case if problem occurs again. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=390117&aid=1347560&group_id=27350 |