In cooperative communications, error propagation at relays reduces the diversity order of the system. To combat that effect, we present a novel technique to control error propagation at the relays, which is presented in the context of a relay cooperating with a source to communicate with a destination using a turbo code. The relay calculates log-likelihood ratio (LLR) values for the bits sent from the source. These value are subjected to a threshold to selectively forward bits that are most reliable and discard bits that are less so, resulting in less errors propagating to the destination. We derive upper bounds on the bit-error rates for our proposed system and use them to optimize the threshold at the relay, showing that our system provides a better trade off between prevented errors and blocked correct bits. We compare our scheme with controlling error propagation using only a cyclic redundancy code(CRC) check at the relay, forwarding analog LLR values, and employing no error control at the relay at all. Based on system simulations, we show that our proposed scheme provides a significant diversity gain compared to other techniques.