mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-27 23:10:16 +01:00
Fix continueServerUpdate with 2-line subjects
This commit is contained in:
parent
fbe7d95d0f
commit
17a9cefe8e
4 changed files with 19 additions and 7 deletions
|
@ -194,6 +194,7 @@ abstract class RebasePatches : BaseTask() {
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
val regex = Pattern.compile("Patch failed at ([0-9]{4}) (.*)")
|
val regex = Pattern.compile("Patch failed at ([0-9]{4}) (.*)")
|
||||||
|
val continuationRegex = Pattern.compile("^\\s{1}.+\$")
|
||||||
const val subjectPrefix = "Subject: [PATCH] "
|
const val subjectPrefix = "Subject: [PATCH] "
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -223,8 +224,19 @@ abstract class RebasePatches : BaseTask() {
|
||||||
val failedSubjectFragment = matcher.group(2)
|
val failedSubjectFragment = matcher.group(2)
|
||||||
val failed = unapplied.single { p ->
|
val failed = unapplied.single { p ->
|
||||||
p.useLines { lines ->
|
p.useLines { lines ->
|
||||||
val subjectLine = lines.single { it.startsWith(subjectPrefix) }
|
val collect = mutableListOf<String>()
|
||||||
.substringAfter(subjectPrefix)
|
for (line in lines) {
|
||||||
|
if (line.startsWith(subjectPrefix)) {
|
||||||
|
collect += line
|
||||||
|
} else if (collect.size == 1) {
|
||||||
|
if (continuationRegex.matcher(line).matches()) {
|
||||||
|
collect += line
|
||||||
|
} else {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
val subjectLine = collect.joinToString("").substringAfter(subjectPrefix)
|
||||||
subjectLine.startsWith(failedSubjectFragment)
|
subjectLine.startsWith(failedSubjectFragment)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,7 @@ diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/n
|
||||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/Mob.java
|
--- a/src/main/java/net/minecraft/world/entity/Mob.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
|
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||||
@@ -0,0 +0,0 @@ public abstract class Mob extends LivingEntity implements Targeting {
|
@@ -0,0 +0,0 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Targeti
|
||||||
|
|
||||||
if (entityhuman != null) {
|
if (entityhuman != null) {
|
||||||
double d0 = entityhuman.distanceToSqr((Entity) this);
|
double d0 = entityhuman.distanceToSqr((Entity) this);
|
|
@ -10,8 +10,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
||||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||||
@@ -0,0 +0,0 @@ public class FallingBlockEntity extends Entity {
|
@@ -0,0 +0,0 @@ public class FallingBlockEntity extends Entity {
|
||||||
}
|
++this.time;
|
||||||
|
this.applyGravity();
|
||||||
this.move(MoverType.SELF, this.getDeltaMovement());
|
this.move(MoverType.SELF, this.getDeltaMovement());
|
||||||
+ // Paper start - Configurable falling blocks height nerf
|
+ // Paper start - Configurable falling blocks height nerf
|
||||||
+ if (this.level().paperConfig().fixes.fallingBlockHeightNerf.test(v -> this.getY() > v)) {
|
+ if (this.level().paperConfig().fixes.fallingBlockHeightNerf.test(v -> this.getY() > v)) {
|
||||||
|
@ -31,8 +31,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
||||||
--- a/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java
|
--- a/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java
|
+++ b/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java
|
||||||
@@ -0,0 +0,0 @@ public class PrimedTnt extends Entity implements TraceableEntity {
|
@@ -0,0 +0,0 @@ public class PrimedTnt extends Entity implements TraceableEntity {
|
||||||
}
|
if (this.level().spigotConfig.maxTntTicksPerTick > 0 && ++this.level().spigotConfig.currentPrimedTnt > this.level().spigotConfig.maxTntTicksPerTick) { return; } // Spigot
|
||||||
|
this.applyGravity();
|
||||||
this.move(MoverType.SELF, this.getDeltaMovement());
|
this.move(MoverType.SELF, this.getDeltaMovement());
|
||||||
+ // Paper start - Configurable TNT height nerf
|
+ // Paper start - Configurable TNT height nerf
|
||||||
+ if (this.level().paperConfig().fixes.tntEntityHeightNerf.test(v -> this.getY() > v)) {
|
+ if (this.level().paperConfig().fixes.tntEntityHeightNerf.test(v -> this.getY() > v)) {
|
Loading…
Reference in a new issue