fix shm bug