gnembon / fabric-carpet

Fabric Carpet
MIT License
1.67k stars 261 forks source link

checkProcessTEs call with null blockEntity #758

Closed magneticflux- closed 3 years ago

magneticflux- commented 3 years ago

I just encountered this issue while flying around loading chunks on a server. It seems to have occurred in the past (https://github.com/gnembon/fabric-carpet/commit/7f09bbf1938ce2779d3d2cd45cee003c0f6305d6), but no fix was introduced because it wasn't common or reproducible.

I expect an interaction with Bobby is the cause, as there is a similar issue in their repo: https://github.com/Johni0702/bobby/issues/10

The full crash report:

---- Minecraft Crash Report ----
// Shall we play a game?

Time: 3/8/21, 8:20 PM
Description: Unexpected error

java.lang.NullPointerException: Cannot invoke "net.minecraft.class_2586.method_11015()" because "blockEntity" is null
    at Not Enough Crashes deobfuscated stack trace.(1.15.2+build.15)
    at net.minecraft.world.World.redirect$cjk000$checkProcessTEs(World:8753)
    at net.minecraft.world.World.tickBlockEntities(World:504)
    at net.minecraft.client.world.ClientWorld.tickEntities(ClientWorld:176)
    at net.minecraft.client.MinecraftClient.tick(MinecraftClient:1556)
    at net.minecraft.client.MinecraftClient.render(MinecraftClient:1021)
    at net.minecraft.client.MinecraftClient.run(MinecraftClient:681)
    at net.minecraft.client.main.Main.main(Main:215)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:567)
    at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:226)
    at net.fabricmc.loader.launch.knot.Knot.launch(Knot.java:146)
    at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:28)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:567)
    at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196)
    at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231)
    at org.multimc.EntryPoint.listen(EntryPoint.java:143)
    at org.multimc.EntryPoint.main(EntryPoint.java:34)

A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Affected level --
Details:
    All players: 1 total; [class_746['MinerDude333'/9783, l='ClientLevel', x=-1941.21, y=160.02, z=-112.05]]
    Chunk stats: SodiumChunkCache: 1144 F: 572 M: 2509 L: 0
    Level dimension: minecraft:overworld
    Level spawn location: World: (-225,80,-128), Chunk: (at 15,5,0 in -15,-8; contains blocks -240,0,-128 to -225,255,-113), Region: (-1,-1; contains chunks -32,-32 to -1,-1, blocks -512,0,-512 to -1,255,-1)
    Level time: 609898501 game time, 603240970 day time
    Server brand: fabric
    Server type: Non-integrated multiplayer server
Stacktrace:
    at net.minecraft.class_638.method_8538(class_638.java:449)
    at net.minecraft.class_310.method_1587(class_310.java:2239)
    at fudge.notenoughcrashes.mixinhandlers.InGameCatcher.handleClientCrash(InGameCatcher.java:28)
    at net.minecraft.class_310.modify$bpa000$onCrash(class_310.java:12912)
    at net.minecraft.class_310.method_1514(class_310.java:704)
    at net.minecraft.client.main.Main.main(Main.java:215)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:567)
    at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:226)
    at net.fabricmc.loader.launch.knot.Knot.launch(Knot.java:146)
    at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:28)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:567)
    at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196)
    at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231)
    at org.multimc.EntryPoint.listen(EntryPoint.java:143)
    at org.multimc.EntryPoint.main(EntryPoint.java:34)
-- System Details --
Details:
    Minecraft Version: 1.16.5
    Minecraft Version ID: 1.16.5
    Operating System: Windows 10 (amd64) version 10.0
    Java Version: 16, AdoptOpenJDK
    Java VM Version: OpenJDK 64-Bit Server VM (mixed mode, sharing), AdoptOpenJDK
    Memory: 464288912 bytes (442 MB) / 1325400064 bytes (1264 MB) up to 4294967296 bytes (4096 MB)
    CPUs: 20
    JVM Flags: 3 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xms1024m -Xmx4096m
    Suspected Mods: Fabric Loader (fabricloader)
    Fabric Mods: 
        advancements-enlarger: Advancements Enlarger 0.2.3
        amecs: Amecs 1.3.3+mc.1.16.3
        amecsapi: Amecs API 1.1.3+mc1.16.5
        angerable-patch: Angerable Patch 1.1.0-1.16.4
        appleskin: AppleSkin 1.0.11
        architectury: Architectury 1.8.131
        artifice: Artifice 0.14.6+1.16.5
        autoconfig1u: Auto Config v1 Updated 3.3.1
        beaconsforall: Beacons For All 1.4.1-1.16.5
        betterdroppeditems: Better Dropped Items 1.2.4-1.16.2
        bettergraves: Better Graves 0.4.1
        bettersleeping: Better Sleeping 0.4.0
        betterthanmending: BetterThanMending 1.3.0
        blue_endless_jankson: jankson 1.2.0
        bobby: Bobby 0.2.0
        cameraoverhaul: Camera Overhaul 1.2.2-fabric-universal
        can-i-mine-this-block: cAn i MiNe thIS bLOCk? 1.0.2
        carpet: Carpet Mod in Fabric 1.4.28
        carpet-extra: Carpet Extra 1.4.27
        cloth-basic-math: Cloth Basic Math 0.5.1
        cloth-client-events-v0: Cloth Client Events v0 1.5.47
        cloth-config2: Cloth Config v4 4.11.14
        colormatic: Colormatic 2.2.8+mc.1.16.3
        com_github_shevek_parallelgzip: parallelgzip master-SNAPSHOT
        com_moandjiezana_toml_toml4j: toml4j 0.7.2
        com_squareup_moshi_moshi: moshi 1.9.2
        com_squareup_okio_okio: okio 1.16.0
        cotton-config: Cotton Config 1.0.0-rc.7
        cotton-logging: Cotton Logging 1.0.0-rc.4
        craftpresence: CraftPresence 1.7.6
        dynamicfps: Dynamic FPS 2.0.1
        dynamicsoundfilters: Dynamic Sound Filters 1.2.0+1.16.5
        elytra_swap: Elytra Swap 2.2.0-1.16.2
        enhancedblockentities: Enhanced Block Entities 0.1
        entityculling: EntityCulling-Fabric 1.0.2
        fabric: Fabric API 0.32.0+1.16
        fabric-api-base: Fabric API Base 0.2.1+9354966b7d
        fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.0.0+dc716ea17d
        fabric-biome-api-v1: Fabric Biome API (v1) 3.1.1+ca58154a7d
        fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.5+ca58154a7d
        fabric-command-api-v1: Fabric Command API (v1) 1.1.0+f9b3753b7d
        fabric-commands-v0: Fabric Commands (v0) 0.2.2+ca58154a7d
        fabric-containers-v0: Fabric Containers (v0) 0.1.11+9354966b7d
        fabric-content-registries-v0: Fabric Content Registries (v0) 0.2.1+ca58154a7d
        fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.1.3+ca58154a7d
        fabric-diagonal-panes: Fabric Diagonal Panes 0.4.0
        fabric-dimensions-v1: fabric-dimensions-v1 2.0.6+9354966b7d
        fabric-entity-events-v1: Fabric Entity Events (v1) 1.0.3+ca58154a7d
        fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.2+ca58154a7d
        fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.1+ca58154a7d
        fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.6+ca58154a7d
        fabric-item-api-v1: Fabric Item API (v1) 1.2.1+ca58154a7d
        fabric-item-groups-v0: Fabric Item Groups (v0) 0.2.3+ca58154a7d
        fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.4+9354966b7d
        fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.1+ca58154a7d
        fabric-language-kotlin: Fabric Language Kotlin 1.4.21+build.1
        fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 1.2.1+ca58154a7d
        fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.0.2+ca58154a7d
        fabric-mining-levels-v0: Fabric Mining Levels (v0) 0.1.3+ca58154a7d
        fabric-models-v0: Fabric Models (v0) 0.2.1+ca58154a7d
        fabric-mumblelink-mod: MumbleLink 0.7.5
        fabric-networking-api-v1: Fabric Networking API (v1) 1.0.1+ca58154a7d
        fabric-networking-blockentity-v0: Fabric Networking Block Entity (v0) 0.2.8+ca58154a7d
        fabric-networking-v0: Fabric Networking (v0) 0.3.2+ca58154a7d
        fabric-object-builder-api-v1: Fabric Object Builder API (v1) 1.9.4+9354966b7d
        fabric-object-builders-v0: Fabric Object Builders (v0) 0.7.2+ca58154a7d
        fabric-particles-v1: Fabric Particles (v1) 0.2.4+ca58154a7d
        fabric-registry-sync-v0: Fabric Registry Sync (v0) 0.7.4+ca58154a7d
        fabric-renderer-api-v1: Fabric Renderer API (v1) 0.4.1+ca58154a7d
        fabric-renderer-indigo: Fabric Renderer - Indigo 0.4.4+ca58154a7d
        fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 2.2.1+ca58154a7d
        fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.1.5+ca58154a7d
        fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 0.1.13+ca58154a7d
        fabric-rendering-v0: Fabric Rendering (v0) 1.1.2+ca58154a7d
        fabric-rendering-v1: Fabric Rendering (v1) 1.5.1+ca58154a7d
        fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.4.2+ca58154a7d
        fabric-screen-api-v1: Fabric Screen API (v1) 1.0.0+c045166c7d
        fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.1.5+9354966b7d
        fabric-start-the-music: Start the Music! 0.2.1
        fabric-structure-api-v1: Fabric Structure API (v1) 1.1.4+ca58154a7d
        fabric-tag-extensions-v0: Fabric Tag Extensions (v0) 1.1.1+ca58154a7d
        fabric-textures-v0: Fabric Textures (v0) 1.0.6+ca58154a7d
        fabric-tool-attribute-api-v1: Fabric Tool Attribute API (v1) 1.2.6+ca58154a7d
        fabric-tree-chopper: Fabric Tree Chopper 0.6.1
        fabricloader: Fabric Loader 0.11.2
        fairenchanting: FairEnchanting 1.2.0
        fiber: fiber 0.23.0-2
        fiber2cloth: Fiber To Cloth 3.1.0
        harvest: Harvest 1.2.12
        hydrogen: Hydrogen 0.2-SNAPSHOT
        indium: Indium 1.0.0
        inventorysorter: Inventory Sorter 1.7.7-1.16
        iris: Iris 0.2.0-sodium_compatibility
        itemmodelfix: Item Model Fix 1.0.0
        jankson: Jankson 3.0.1+j1.2.0
        java: OpenJDK 64-Bit Server VM 16
        kirin: Kirin UI 1.7-1.16.2
        krypton: Krypton 0.1.2
        kyrptconfig: Kytpt Config 1.1.6-1.16
        lambdabettergrass: LambdaBetterGrass 1.0.3+1.16
        lambdynlights: LambDynamicLights 1.3.4+1.16
        lazydfu: LazyDFU 0.1.2
        lightoverlay: Light Overlay 5.8.0
        lithium: Lithium 0.6.4-SNAPSHOT
        malilib: MaLiLib 0.10.0-dev.21+arne.2
        minecraft: Minecraft 1.16.5
        mm: Manningham Mills 2.1
        modmenu: Mod Menu 1.16.8
        modupdater: ModUpdater 1.1.11+1.16.2-rc2
        mostructures: Mo' Structures 1.1.0+mc.1.16.5
        mousewheelie: Mouse Wheelie 1.6.4+mc1.16.4
        net_gegy1000_just-now: just-now 0.1.0-SNAPSHOT
        notenoughanimations: NotEnoughAnimations 1.0.3
        notenoughcrashes: Not Enough Crashes 3.1.8
        okzoomer: Ok Zoomer 4.0.1+1.16.2
        org_apache_commons_commons-compress: commons-compress 1.19
        org_aperlambda_lambdajcommon: lambdajcommon 1.8.1
        org_codehaus_groovy_groovy: groovy 3.0.3
        org_codehaus_groovy_groovy-jsr223: groovy-jsr223 3.0.3
        org_jetbrains_annotations: annotations 20.0.0
        org_jetbrains_kotlin_kotlin-reflect: kotlin-reflect 1.4.21
        org_jetbrains_kotlin_kotlin-stdlib: kotlin-stdlib 1.4.21
        org_jetbrains_kotlin_kotlin-stdlib-jdk7: kotlin-stdlib-jdk7 1.4.21
        org_jetbrains_kotlin_kotlin-stdlib-jdk8: kotlin-stdlib-jdk8 1.4.21
        org_jetbrains_kotlinx_kotlinx-coroutines-core: kotlinx-coroutines-core 1.3.7
        org_jetbrains_kotlinx_kotlinx-coroutines-core-jvm: kotlinx-coroutines-core-jvm 1.4.2
        org_jetbrains_kotlinx_kotlinx-coroutines-jdk8: kotlinx-coroutines-jdk8 1.4.2
        org_tukaani_xz: xz 1.8
        presencefootsteps: Presence Footsteps r29+1.16.4
        repurposed_structures: Repurposed Structures 1.16.5-1.8.6
        roughlyenoughitems: Roughly Enough Items 5.10.184
        roughlyenoughitems-api: REI (API) 5.10.184
        roughlyenoughitems-default-plugin: REI (Default Plugin) 5.10.184
        roughlyenoughitems-runtime: REI (Runtime) 5.10.184
        roughlyenoughresources: Roughly Enough Resources 2.1.3
        screenshotclipboard: Screenshot to Clipboard 1.0.6
        seamless_loading_screen: Seamless Loading Screen 1.3.1
        slight-gui-modifications: 'Slight' GUI Modifications 1.7.1
        smoothscrollingeverywhere: Smooth Scrolling Everywhere 3.0.3-unstable
        sneak-through-berries: Sneak Through Berries 1.1.0+1.16.4-fabric
        sodium: Sodium IRIS-SNAPSHOT
        spark: spark 1.4.3
        spruceui: SpruceUI 2.0.4+1.16
        starlight: Starlight 0.0.3
        textile_backup: Textile Backup 2.1.0-prev-1.16.4
        the_loved_ones: The Loved Ones 1.1.0+1.16.4
        tic_tacs: Tic-TACS 0.1.3
        tweakeroo: Tweakeroo 0.10.0-dev.20210303.123654
        tweed: Tweed API 3.0.0-beta.22
        voyager: Voyager 1.0.0
        waila: Hwyla 1.9.22
        worldedit: WorldEdit 7.2.0-SNAPSHOT+5279-a8bba3b
        worldeditcui: worldeditcui 1.16.1
    Launched Version: MultiMC5
    Backend library: LWJGL version 3.2.2 build 10
    Backend API: GeForce RTX 2070 Super/PCIe/SSE2 GL version 4.6.0 NVIDIA 461.72, NVIDIA Corporation
    GL Caps: Using framebuffer using OpenGL 3.0
    Using VBOs: Yes
    Is Modded: Definitely; Client brand changed to 'fabric'
    Type: Client (map_client.txt)
    Graphics mode: fancy
    Resource Packs: slightguimodifications:cts_textures, vanilla, file/Faithful-1.16.4.zip, file/Faithful - Colour Consistent Elytra.zip, file/Glass Doors Addon for Faithful.zip, file/Stacked Items Addon for Faithful.zip, file/Unobtrusive+Shields.zip (incompatible), file/unified_dye_addon.zip (incompatible), file/alternate-entities-v1-2.zip (incompatible), file/Netherwart_Growth_Stage.zip (incompatible), file/Honey Layers.zip (incompatible), file/Dark UI - 1.15.2.zip (incompatible), file/Faithful - Magma Anvil Pack 1.15-1.16 (incompatible), file/Redstone Utility Pack (incompatible), file/V1.2+For+MC+1.15.x.zip (incompatible), file/Faithful - Alternative - 1.16 v3.0 CU1.1 (incompatible), file/Faithful - Animated Environement - 1.15-1.16 V3.1 (incompatible), file/§2Bushy+Leaves+§rv2.0+§bUltra§r.zip, file/Faithful32 AppleSkin.zip, fabric-diagonal-panes/default, Fabric Mods, file/Unobtrusive Environment.zip
    Current Language: English (US)
    CPU: 20x Intel(R) Core(TM) i9-10900K CPU @ 3.70GHz
    Client Crashes Since Restart: 1
    Integrated Server Crashes Since Restart: 0
altrisi commented 3 years ago

Well, according to the issue you mentioned, this issue occurs without Carpet and with just Bobby, so I'm not sure whether this is a Carpet bug.

magneticflux- commented 3 years ago

You're right, Carpet just redirects an existing method, meaning the NPE would still have been thrown even if Carpet wasn't installed.