I've confirmed r2448 of src/configobject.cpp borked the setting of config
keys...
Here is the diff of the previous version r2420 against it... for those who
want to take a look at it quick...
Index: src/configobject.cpp
===================================================================
--- src/configobject.cpp (revision 2471)
+++ src/configobject.cpp (working copy)
@@ -180,6 +180,7 @@
midioption = MIDI_OPT_SPREAD64;
else if (optname == "selectknob")
midioption = MIDI_OPT_SELECTKNOB;
+
else if (optname == "script-binding")
midioption = MIDI_OPT_SCRIPT;
else {
@@ -245,6 +246,7 @@
midioption = MIDI_OPT_SPREAD64;
else if (option.contains("SelectKnob", false))
midioption = MIDI_OPT_SELECTKNOB;
+
else if (option.contains("Script-Binding", false))
midioption = MIDI_OPT_SCRIPT;
else
@@ -488,8 +490,7 @@
// Search for key in list, and set value if found
ConfigOption<ValueType> *it;
for (it = list.first(); it; it = list.next())
- if (QString::compare(it->val->value, v.value, Qt::CaseInsensitive)
== 0)
-// if (it->key->group == k.group & it->key->item == k.item)
+ if (it->key->group == k.group & it->key->item == k.item)
{
//qDebug() << "set found." << group << "," << item;
//cout << "1: " << v.value << "\n";
@@ -535,17 +536,17 @@
for (it = list.first(); it; it = list.next())
{
if (QString::compare(it->val->value, v.value, Qt::CaseInsensitive)
== 0){
- //qDebug() << "ConfigObject #534: QString::compare match for "
<< it->key->group << it->key->item;
+ // qDebug() << "#534: QString::compare match for " <<
it->key->group << it->key->item;
return it->key;
}
if (((ValueType)*it->val) == ((ValueType)v))
{
- //qDebug() << "ConfigObject: match" << it->val->value.toUpper()
<< "with" << v.value.toUpper();
+ // qDebug() << "match" << it->val->value.toUpper() << "with" <<
v.value.toUpper();
return it->key;
}
if (it == list.getLast()) {
- //qDebug() << "ConfigObject: last match attempted" <<
it->val->value.toUpper() << "with" << v.value.toUpper();
+ // qDebug() << "last match attempted" <<
it->val->value.toUpper() << "with" << v.value.toUpper();
}
}
qDebug() << "No match for ConfigObject:" << v.value;
__
--- == __/ t.O ==--
http://stacktrace.org/
On Wed, Jan 21, 2009 at 4:50 PM, Garth Dahlstrom <[email protected]> wrote:
> So play with it, setting the value to "none" in .mixxx.cfg I see it
> gets read into memory at that config key, but when I set it and reread
> it still as the original value from file.
>
> I'll try to roll back to whatever the previous trunk ver of the file
> and see if that helps.
>
> On 21/01/2009, Albert Santoni <[email protected]> wrote:
> > Try rolling back the latest changes to configobject.cpp. I committed a
> > patch a few weeks ago that Sean wrote to enable multiple buttons to be
> > bound to the same thing. (To anyone who's unfamiliar with this
> > situation, yes, we know this is insane that MIDI has anything to do
> > with our settings saving code.) The changes in the patch broke my new
> > MIDI code for some reason, and I haven't been able to figure that out.
> >
> > So yeah, rollback the changes in configobjec.cpp and see if it
> > magically fixes your problem. It might magically fix that skin issue
> > too.
> >
> > Thanks,
> > Albert
> >
> > On 21-Jan-09, at 6:16 AM, Garth Dahlstrom wrote:
> >
> >> Whenever the config->get(Co... Is called with that ConfigKey it
> >> returns "" regardless of how many times you set it.
> >>
> >> I'm guessing if the initial value is "" or null or whatever, the
> >> config->set() fails to associate the value...
> >>
> >> I can't say I can really follow what configObject->set, get are doing
> >> when they evaluate it... If I'm not out to lunch, it is trying to
> >> match the valueType->value to an existing one and update it, not sure
> >> how that is going to work for configValues that set there values to
> >> "Yes" vs. ""... Whole thing looks a bit dodgey to me...
> >>
> >> I guess I'll have to slap a debugger on it and see if I can figure out
> >> what is going on...
> >>
> >> -G
> >>
> >>
> >> On 21/01/2009, Sean M. Pappalardo <[email protected]> wrote:
> >>>
> >>>
> >>> Garth Dahlstrom wrote:
> >>>> Why is it that AgreedToUserExperienceProgram which was set in the
> >>>> first
> >>>> line, is unset again in the second? Is there some kind of flush
> >>>> operation or signal that needs to be called to make this work?!?
> >>>
> >>> If you look at your config file, what does it show there?
> >>> Might this be related to the other config file weirdness we've been
> >>> seeing when you run Mixxx with no config file? (Duplicate sections,
> >>> blank values.)
> >>>
> >>> Sean
> >>>
> >>> <
> >>> <
> >>>
> --------------------------------------------------------------------------------->
> >>>
> >>> >
> >>> This E-Mail message has been scanned for viruses
> >>> and cleared by >>SmartMail<< from Smarter Technology, Inc.
> >>> <
> >>> <
> >>>
> --------------------------------------------------------------------------------->
> >>>
> >>> >
> >>>
> >>
> >>
> >> --
> >> __
> >> --- == __/ t.O ==--
> >> http://stacktrace.org/
> >>
> >>
> ------------------------------------------------------------------------------
> >> This SF.net email is sponsored by:
> >> SourcForge Community
> >> SourceForge wants to tell your story.
> >> http://p.sf.net/sfu/sf-spreadtheword
> >> _______________________________________________
> >> Mixxx-devel mailing list
> >> [email protected]
> >> https://lists.sourceforge.net/lists/listinfo/mixxx-devel
> >
> >
>
>
> --
> __
> --- == __/ t.O ==--
> http://stacktrace.org/
>
------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
Mixxx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mixxx-devel