I have a potential fix that you should test before setting it loose on a live site (maybe Raymond can chime in and help us here also).
Around line 172 of manager/processors/save_content.processor.php you should find:
// save value if it was mopdified
if (in_array($row['name'], $variablesmodified)) {
I changed this to:
// save value if it was mopdified
//if (in_array($row['name'], $variablesmodified)) {
if (true) {
and things still seem to work properly...
Basically, there’s a hidden form field in manager/actions/mutate_content.dynamic.php called variablesmodified that has each var added to it by JavaScript when they’re changed. Changing a variable by choosing autotext doesn’t seem to trigger this event, so these vars aren’t added to that array. This is the code that checks that a TV is in the variablesmodified array before updating its value.
I’d certainly like to see this evaluated by the authors of the original code before dispensing wholesale with a check that was probably there for a reason, but if the reason was just to reduce database queries and it causes this autotext issue then perhaps this is a necessary hack.