I2C between Trinkets and Mega not working

  #include <Wire.h>

void setup() {
  Wire.begin(5);
  pinMode(13, OUTPUT);
  digitalWrite(13, HIGH);
  Wire.onReceive(receiveEvent);
  Serial.begin(9600);
}

void loop() {
}

void receiveEvent(int howMany)
{
  while(0 < Wire.available())
  {
    byte c = Wire.read();
    Serial.println(c);
    if (0 == c) {    
      digitalWrite(13, HIGH);
    }
    else {    
      digitalWrite(13, LOW); 
    }  
  }
}

/////////////////////////////-- CORRECTED ---////////////////////////////////////////

  #include <Wire.h>

void setup() {
  Wire.begin(5);
  pinMode(13, OUTPUT);
  digitalWrite(13, HIGH);
  Wire.onReceive(receiveEvent);
  Serial.begin(9600);
}

void loop() {
    while(0 < Wire.available())
  {
    byte c = Wire.read();
    Serial.println(c);
    if (0 == c) {    
      digitalWrite(13, HIGH);
    }
    else {    
      digitalWrite(13, LOW); 
    }  
  }
}

I'm having a hard time finding the difference between your original Mega code and the corrected one you just posted.
Can you label the part you added so it is easier to see ?