#826 closed Defect (fixed)
wrong URL after clicking on the help (='?') button in simple GUI
Reported by: | mjakubicek | Owned by: | romw |
---|---|---|---|
Priority: | Minor | Milestone: | 6.6 |
Component: | Manager | Version: | 6.4.5 |
Keywords: | Cc: | mjakubicek |
Description
Clicking on the '?' (help) button in simple GUI results into an error:
Wrong URL format http://`manager_links.php?target=simple
This is on Fedora 10.
Change History (16)
comment:1 follow-up: 2 Changed 16 years ago by
comment:2 Changed 16 years ago by
Replying to Nicolas:
Ugh, wasn't this kind of problem fixed a dozen times already? Maybe it went to a branch and was never fixed in trunk so it keeps showing up?
This one too? Oh not...if so, may be I'll start taking the /trunk as base for Fedora packages because the tags are useless.
comment:4 Changed 16 years ago by
Replying to romw:
Are you using a customized skin file?
No, I'm not aware about anything like that -- does BOINC by default? It's the Fedora package I'm maintaining without modifications.
comment:5 Changed 16 years ago by
Replying to mjakubicek:
may be I'll start taking the /trunk as base for Fedora packages because the tags are useless.
No, on the contrary. I meant maybe it got fixed in, say, 6.2 branch; trunk was left with the bug; and when 6.4 branch was copied from trunk the buggy code was there.
comment:6 follow-up: 9 Changed 16 years ago by
I've checked 6.4, 6.6, and trunk and they all are supposed to be creating help links that look like this:
wxurl.Printf(
wxT("%s?target=simple&version=%s&controlid=%d"), url.c_str(), BOINC_VERSION_STRING, event.GetId?()
);
So whihc tag are you building your package against?
comment:8 Changed 16 years ago by
Okay, I did some more digging. It appears to exist in the 6.2 and 6.4 branches.
The bug is actually in sg_ProjectsComponent.cpp in the CProjectsComponent::OnHelp? function.
This bug was fixed in both trunk and the 6.6 branch.
comment:9 Changed 16 years ago by
If url
is a std::string
, that code won't work in Unicode mode. In ANSI mode, wxString.Printf
expects a char*
to match a %s
, but a wchar_t*
in Unicode mode (or whatever underlying character type is used for a Unicode wxString
). std::string
's .c_str()
always returns a char*
. You have to convert the string to Unicode first.
comment:10 Changed 16 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
(In [16917]) - MGR: Don't convert strings to ANSI juts to have to reconvert them
back to Unicode. Fix several help link issues. Fixes #826
clientgui/
AdvancedFrame?.cpp DlgAdvPreferences?.cpp sg_BoincSimpleGUI.cpp sg_DlgMessages.cpp sg_DlgPreferences.cpp sg_ProjectsComponent.cpp
comment:11 Changed 16 years ago by
(In [16919]) - MGR: Don't convert strings to ANSI juts to have to reconvert them
back to Unicode. Fix several help link issues.
Fixes #826
clientgui/
AdvancedFrame?.cpp DlgAdvPreferences?.cpp sg_BoincSimpleGUI.cpp sg_DlgMessages.cpp sg_DlgPreferences.cpp sg_ProjectsComponent.cpp
comment:12 Changed 16 years ago by
(In [16923]) - MGR: Don't convert strings to ANSI juts to have to reconvert them
back to Unicode. Fix several help link issues. Fixes #826
clientgui/
AdvancedFrame?.cpp DlgAdvPreferences?.cpp sg_BoincSimpleGUI.cpp sg_DlgMessages.cpp sg_DlgPreferences.cpp sg_ProjectsComponent.cpp
comment:13 Changed 16 years ago by
This issue and the related other string conversion issues should now be fixed in trunk, 6.6, 6.4, and 6.2.
Just point your tag at whichever branch you were trying to build and you should be good to go.
comment:14 follow-up: 15 Changed 16 years ago by
Rom: many thanks for fast reaction.
I've one more question: are the branches considered to be stable? I.e. may/should I now rebase the Fedora packages to the current 6.4 branch?
comment:15 Changed 16 years ago by
Replying to mjakubicek:
I've one more question: are the branches considered to be stable? I.e. may/should I now rebase the Fedora packages to the current 6.4 branch?
Just to explain a bit more: otherwise I'll stay by using isolated patches (fortunately they're so easy to create in trac:) between the 6_4_5 tag and the current 6.4 branch to fix problems as this one.
comment:16 Changed 16 years ago by
Branches are the latest stable form of a given client line.
6.2 and 6.4 are stable, 6.6 we are working on making stable. 6.6 will be stable as soon as we have a client marked as a publically usable client.
trunk will forever be a work in progress.
Ugh, wasn't this kind of problem fixed a dozen times already? Maybe it went to a branch and was never fixed in trunk so it keeps showing up?