Project gets flagged as "modified *" in title bar

DeRoc

2012-09-21 21:06:43

I've been perplexed by this for many months (using Win7 x64, BMT v1.72):

After bootup and BMT has been running, my loaded "programs.bmtp" file gets flagged as "changed" (and showing the * on the title bar).
I've saved this "changed" file with a new name and compared to the original - no difference at all.
But I still get asked to save the file on closing (most annoyingly when I shutdown, it'll wait until that file is dealt with, or stay on all night, waiting, because I forgot to look back at the screen!)

This happens randomly, about 90% of bootups, and usually within the first hour or so after boot.
So far, no success in trying to track other programs that might be causing this, during bootup or afterwards.

I tried to create a Task Scheduler to monitor when the file changes, but no luck on my attempts setting it up.
Maybe a VBS script running in the background, watching for an Attribute change...?
Maybe the .exe file in memory is being altered and sending a false flag somehow?

Any clue to what can cause a file to change its state (and not the data) would help.
Thanks.

florian

2012-09-23 22:06:11

Hi DeRoc,

thanks for this bug report. But I don't think it's a bug :)

But I believe I know what's happening, and it reminds me to find a solution for this issue.

First of all, the * means that the project file in memory of Midi Translator has changed and SHOULD be written to disk to change it there, too. So the file on your harddisk will not have changed.

Any changes to the project will cause the * mark to appear, like editing Translators, changing project MIDI ports, etc. because these are all things that belong into the project file so that you'll have them as before when loaded into MT the next time.

One of these settings that get stored in the project file is if a preset is activated or deactivated. Now, a translator can deliberately activate or deactivate a preset (by way of the preset outgoing action), causing the project file to become "modified", and the * appears. It happens to me quite a lot, and it is annoying.

I've thought about two solutions:
  1. a performance mode that will disallow any edits to the project, and will not mark the project file for saving when a preset is deactivated or activated from within a translator action. I guess this will be quite useful.
  2. an initial state (activated or deactivated) for a preset, in addition to the current state: the initial state is stored in the project file and it is the state of the preset when loaded (or reset). It is different from the "current state" which will then not cause a modification of the project, because the current state is not stored in the project file.
Makes sense? Let me know.
Florian

DeRoc

2012-09-24 00:00:10

Thanks for the great explanation! Glad to know it's not just me!
I do use translators to turn on-off presets so I'll watch those more closely.
I like the idea of the 'performance mode', since that's how I generally use it, anyway.
So at least it's not an external problem to track down. Thanks again.
DeRoc