diff -crB avogadro-1.2.0/libavogadro/src/extensions/symmetry/libmsym/src/orbital.c avogadro-1.2.0-fixed/libavogadro/src/extensions/symmetry/libmsym/src/orbital.c *** avogadro-1.2.0/libavogadro/src/extensions/symmetry/libmsym/src/orbital.c 2016-06-08 11:19:45.000000000 -0300 --- avogadro-1.2.0-fixed/libavogadro/src/extensions/symmetry/libmsym/src/orbital.c 2016-09-13 11:57:50.181291665 -0300 *************** *** 67,79 **** } case 2 : { //o->v = dpolynomial[m+l]; ! char *d = (signbit(m) == 1 ? "-" : "+"); snprintf(o->name, sizeof(o->name), "%dd%d%s",n,abs(m),d); break; } default : { char t = 'f' - 3 + l; ! char *d = (signbit(m) == 1 ? "-" : "+"); snprintf(o->name, sizeof(o->name), "%d%c%d%s",n,t,abs(m),d); } } --- 67,79 ---- } case 2 : { //o->v = dpolynomial[m+l]; ! char *d = (signbit((float) m) == 1 ? "-" : "+"); snprintf(o->name, sizeof(o->name), "%dd%d%s",n,abs(m),d); break; } default : { char t = 'f' - 3 + l; ! char *d = (signbit((float) m) == 1 ? "-" : "+"); snprintf(o->name, sizeof(o->name), "%d%c%d%s",n,t,abs(m),d); } }