trying to use ir receiver and it works but then it stops can't understand why

ok so it seems that when im just out of rang for it to receive signal from my ir remote it sometimes stops working (it still runs in the loop the led on pin13 keeps fashing) the library i found on adafruit(they had a link to it) and im not familiar with it i even tryed addinging a counter that runs the myReceiver.enableIRIn(); thinking that might help but no luck

#include <IRLibDecodeBase.h>  
#include <IRLibSendBase.h>    
#include <IRLib_P01_NEC.h>   
#include <IRLib_P02_Sony.h>   
#include <IRLib_P03_RC5.h>
#include <IRLib_P04_RC6.h>
#include <IRLib_P05_Panasonic_Old.h>
#include <IRLib_P07_NECx.h>
#include <IRLib_HashRaw.h>    .
IRdecode myDecoder;

#include <IRLibRecv.h> 
IRrecv myReceiver(2); //pin number for the receiver

bool ledbrightness = true;
int  counter = 0;
void setup() { 
  myReceiver.enableIRIn(); // Start the receiver

#define UP_ARROW    0xFFA05F 
#define DOWN_ARROW  0xFF20DF 
#define SLEEP       0xFF609F
#define NORMAL      0xFFE01F

void loop() { 
  if(counter >=100){
    counter = 0;
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(150);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  if (myReceiver.getResults()) {
    if(myDecoder.decode()) {
      switch(myDecoder.value) {
        case UP_ARROW:      ledbrightness = true; break;
        case DOWN_ARROW:    ledbrightness = false; break;
        case SLEEP:         ledbrightness = false; break;
        case NORMAL:        ledbrightness = true; break;
      // led output here 

ok so i changed the code to

if(counter >=100){
    counter = 0;

adding myReceiver.disableIRIn(); to it seem to breing it out of it's not working state also added myReceiver.blink13(true); it does not blink when it stops working