On 21 June 2017 at 16:19, Peter Maydell <peter.mayd...@linaro.org> wrote: > On 14 June 2017 at 04:17, Programmingkid <programmingk...@gmail.com> wrote: >> Programs running inside of QEMU can sometimes use more CPU time than is >> really >> needed. To solve this problem, we just need to throttle the virtual CPU. This >> feature will stop laptops from burning up. >> >> This patch adds a menu called Speed that has menu items from 100% to 1% that >> represent the speed options. 100% is full speed and 1% is slowest. >> >> Signed-off-by: John Arbuckle <programmingk...@gmail.com> >> --- >> v3 changes: >> Changed the item deselection loop. >> Moved speed calculation equation to main function. >> Replaced "%c" with "%%". >> Changed how 100% menu item is made. >> >> v2 changes: >> Fixed missing space with 'if' and 'for' structures. >> Fixed tab damage. >> Use loop to create menu items. >> Changed name of menu items to use percentages. >> Use tags to determine selected menu item. > >> + // Add the rest of the Speed menu items >> + int p, percentage, throttle_pct; >> + for (p = 10; p >= 0; p--) >> + { >> + percentage = p * 10 > 1 ? p * 10 : 1; // prevent a 0% menu item >> + >> + if (percentage == 100) { >> + [menuItem setState: NSOnState]; >> + } >> + menuItem = [[[NSMenuItem alloc] >> + initWithTitle: [NSString stringWithFormat: @"%d%%", >> percentage] action:@selector(adjustSpeed:) keyEquivalent:@""] autorelease]; > > Here you try to call setState: on the menuItem before > you allocate it -- these lines should be the other way > around. (The effect is that the 100% item isn't ticked > on startup.) > >> + >> + /* Calculate the throttle percentage */ >> + throttle_pct = -1 * percentage + 100; >> + >> + [menuItem setTag: throttle_pct]; >> + [menu addItem: menuItem]; >> + } > > That's a very minor fix, so I'll just make it locally > when I apply this patch to master.
...now applied to master, thanks. -- PMM