fixed bug for struct assign.